<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Backing up databases in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712892#M55291</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;my initial thought was to back up a database server gdb with feature datasets and feature classes so that's why it was set to insert rows into the GDB itself rather than a feature class or table within the GDB. But i have now changed the DS.gdb to have feature datasets and feature classes but i am still getting the same error. The database datasets and feature classes does get copied and everything looks fine everything row was copied. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have tried the "r" in my database paths still the same.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 16 Dec 2013 17:15:35 GMT</pubDate>
    <dc:creator>TonyAlmeida</dc:creator>
    <dc:date>2013-12-16T17:15:35Z</dc:date>
    <item>
      <title>Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712889#M55288</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have been working on the following code, i am trying to back up a gdb. I am first trying it with a file geodatabase then i will eventually like it to work with a SQL Server Express database server.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My following code gives me an error but it does copy all the feature classes. I don't understand why this giving me an error but still creates the feature classes. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any help would be great.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;import arcpy, os, string&amp;nbsp; arcpy.env.overwriteOutput = True DS3 = "C:\GIS\DS.gdb"&amp;nbsp; if arcpy.Exists(DS3): &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Delete_management(DS3)&amp;nbsp; def CopyDatasets(start_db,end_db,num): &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #Set workspaces &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = start_db &amp;nbsp;&amp;nbsp;&amp;nbsp; wk2 = end_db &amp;nbsp;&amp;nbsp;&amp;nbsp; datasetList = arcpy.ListDatasets()&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #for feature classes within datasets &amp;nbsp;&amp;nbsp;&amp;nbsp; for dataset in datasetList: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Reading: {0}".format(dataset) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name = arcpy.Describe(dataset) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new_data=name.name[num:] &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if arcpy.Exists(wk2 + os.sep + new_data)==False: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Copy_management(dataset, wk2 + os.sep + new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Completed copy on {0}".format(new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Dataset {0} already exists in the end_db so skipping".format(new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp; #Clear memory &amp;nbsp;&amp;nbsp;&amp;nbsp; del dataset&amp;nbsp; def CopyFeatureClasses(start_db,end_db,num): &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #Set workspaces &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = start_db &amp;nbsp;&amp;nbsp;&amp;nbsp; wk2 = end_db &amp;nbsp;&amp;nbsp;&amp;nbsp; datasetList = arcpy.ListDatasets()&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #for feature classes within datasets &amp;nbsp;&amp;nbsp;&amp;nbsp; for fc in arcpy.ListFeatureClasses(): &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Reading: {0}".format(fc) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name = arcpy.Describe(fc) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new_data=name.name[num:] &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if arcpy.Exists(wk2 + os.sep + new_data)==False: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Copy_management(fc, wk2 + os.sep + new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Completed copy on {0}".format(new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Feature class {0} already exists in the end_db so skipping".format(new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp; #Clear memory &amp;nbsp;&amp;nbsp;&amp;nbsp; del fc&amp;nbsp; def CopyTables(start_db,end_db,num): &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #Set workspaces &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = start_db &amp;nbsp;&amp;nbsp;&amp;nbsp; wk2 = end_db &amp;nbsp;&amp;nbsp;&amp;nbsp; datasetList = arcpy.ListDatasets()&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #for feature classes within datasets &amp;nbsp;&amp;nbsp;&amp;nbsp; for table in arcpy.ListTables(): &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Reading: {0}".format(table) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name = arcpy.Describe(table) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new_data=name.name[num:] &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if arcpy.Exists(wk2 + os.sep + new_data)==False: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Copy_management(table, wk2 + os.sep + new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Completed copy on {0}".format(new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Table {0} already exists in the end_db so skipping".format(new_data) &amp;nbsp;&amp;nbsp;&amp;nbsp; #Clear memory &amp;nbsp;&amp;nbsp;&amp;nbsp; del table &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if __name__== "__main__":&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; start_db = "C:\GIS\PARCEL\Parcel.gdb" #Origin Database &amp;nbsp;&amp;nbsp;&amp;nbsp; end_db = "C:\GIS\DS.gdb"&amp;nbsp; #To database &amp;nbsp;&amp;nbsp;&amp;nbsp; num = 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #number of characters in schema (for example: sde.sde. is 8) &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Copy_management(start_db,end_db,num) &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Copy_management(start_db,end_db,num) &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CopyRows_management(start_db,end_db,num) &lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I forgot to post the error.&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;ExecuteError: Failed to execute. Parameters are not valid. ERROR 000732: Input Rows: Dataset C:\GIS\PARCEL\Parcel.gdb does not exist or is not supported Failed to execute (CopyRows)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Dec 2013 16:34:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712889#M55288</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2013-12-16T16:34:09Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712890#M55289</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;In looking at your error, it seems like you could be trying to insert rows into the GDB itself rather than a feature class or table within the GDB.&amp;nbsp; Are any of your object classes successfully getting rows copied or does it error out on the first object class?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Dec 2013 16:47:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712890#M55289</guid>
      <dc:creator>WilliamCraft</dc:creator>
      <dc:date>2013-12-16T16:47:33Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712891#M55290</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Check all of your string references.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This will likely fail:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
DS3 = "C:\GIS\DS.gdb"
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Change it to:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
DS3 = r'C:\GIS\DS.gdb'
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 06:32:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712891#M55290</guid>
      <dc:creator>JamesCrandall</dc:creator>
      <dc:date>2021-12-12T06:32:19Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712892#M55291</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;my initial thought was to back up a database server gdb with feature datasets and feature classes so that's why it was set to insert rows into the GDB itself rather than a feature class or table within the GDB. But i have now changed the DS.gdb to have feature datasets and feature classes but i am still getting the same error. The database datasets and feature classes does get copied and everything looks fine everything row was copied. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have tried the "r" in my database paths still the same.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Dec 2013 17:15:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712892#M55291</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2013-12-16T17:15:35Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712893#M55292</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Tony,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I would recommend just running the &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://resources.arcgis.com/en/help/main/10.2/index.html#//001700000051000000" rel="nofollow" target="_blank"&gt;Copy&lt;/A&gt;&lt;SPAN&gt; function on the entire File Geodatabase.&amp;nbsp; This will ensure that you are backing up new feature classes, as well as updates that have been made to existing feature classes.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When doing this for SQL Server, it would be best to create a database backup (.bak).&amp;nbsp; This will backup any versions, archiving, views, etc that the database may have.&amp;nbsp; Here is an example that uses the &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://code.google.com/p/pyodbc/" rel="nofollow" target="_blank"&gt;PYODBC&lt;/A&gt;&lt;SPAN&gt; module.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;# imports import pyodbc&amp;nbsp; #define database db = "STATE"&amp;nbsp; # define the backup paths server_backup_path = 'c:\\temp\\'&amp;nbsp; # Connection object (notice that i dont include the database name) conn = pyodbc.connect('DRIVER={SQL Server};SERVER=&amp;lt;server name&amp;gt;;Trusted_Connection=yes', autocommit=True)&amp;nbsp; def backup_db(conn_obj, db_name, server_backup_path): &amp;nbsp; try: &amp;nbsp;&amp;nbsp;&amp;nbsp; os.remove(client_backup_path + db_name + r'_sql.bak') &amp;nbsp; except: &amp;nbsp;&amp;nbsp;&amp;nbsp; pass &amp;nbsp; cur = conn_obj.cursor() &amp;nbsp; try: &amp;nbsp;&amp;nbsp;&amp;nbsp; cur.execute('BACKUP DATABASE ? TO DISK=?', [db_name, server_backup_path + db_name + r'_sql.bak']) &amp;nbsp;&amp;nbsp;&amp;nbsp; while cur.nextset():&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pass &amp;nbsp;&amp;nbsp;&amp;nbsp; cur.close() &amp;nbsp; except: &amp;nbsp;&amp;nbsp;&amp;nbsp; print 'cant backup: ' + db_name&amp;nbsp; backup_db(conn, db, server_backup_path)&amp;nbsp; # close the connection conn.close()&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Dec 2013 17:18:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712893#M55292</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2013-12-16T17:18:44Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712894#M55293</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;This is great info JSkinns! I am able to create the back up SQL Server .bak but I am not having any luck restoring the .bak file. Every time i try i get an GxGDS box with a big x and an ok button then Arc Catalog crashes... any ideas on why this is happening?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Dec 2013 20:07:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712894#M55293</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2013-12-16T20:07:39Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712895#M55294</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm not sure what is causing this error.&amp;nbsp; You may want to follow up with Tech Support.&amp;nbsp; However, you can restore the database by adding another function to the previous code.&amp;nbsp; Ex:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def restore_db(conn_obj, db_name, server_backup_path):
&amp;nbsp; cur = conn_obj.cursor()
&amp;nbsp; cur.execute('RESTORE DATABASE ? FROM DISK=?', [db_name, server_backup_path + db_name + r'_sql.bak'])
&amp;nbsp; while cur.nextset(): 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pass
&amp;nbsp; cur.close()

restore_db(conn, db, server_backup_path)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 06:32:22 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712895#M55294</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-12T06:32:22Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712896#M55295</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I contacted Tech support and they informed me that the way i went about creating the back file was incorrect it is not a valid back file. They strongly suggest creating a back up through Microsoft SQL Service Manager Studio. They walked me through the process with MSSM which did what i wanted but I would rather create a python script to back up my database weekly.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If i add the following function to the previous code you posted wouldn't that make a back up at the time the code is ran and restore it. I was planning on running the code once a week in case i lost the database and i would have something to restore.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Dec 2013 15:48:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712896#M55295</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2013-12-17T15:48:02Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712897#M55296</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You can add the second function and make a copy of the script.&amp;nbsp; One script would be to backup the database, the other would be to restore the database.&amp;nbsp; You would just need to comment out &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_macro_code jive_text_macro"&gt;restore_db(conn, db, server_backup_path)&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;for the backup script, and &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_macro_code jive_text_macro"&gt;backup_db(conn, db, server_backup_path)&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;for the restore script.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Another option you can use is the SQL Server Agent in SQL Server Management Studio:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://lakkireddymadhu.wordpress.com/2013/03/01/scheduling-automated-backup-using-sql-server-2008/"&gt;http://lakkireddymadhu.wordpress.com/2013/03/01/scheduling-automated-backup-using-sql-server-2008/&lt;/A&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Dec 2013 16:15:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712897#M55296</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2013-12-17T16:15:31Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712898#M55297</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;JSinn3 script works excellent! thank you!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So the only way to restore this back up that was created with this script is to the def restore_db?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
def restore_db(conn_obj, db_name, server_backup_path):
&amp;nbsp; cur = conn_obj.cursor()
&amp;nbsp; cur.execute('RESTORE DATABASE ? FROM DISK=?', [db_name, server_backup_path + db_name + r'_sql.bak'])
&amp;nbsp; while cur.nextset(): 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pass
&amp;nbsp; cur.close()

restore_db(conn, db, server_backup_path)
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 06:32:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712898#M55297</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2021-12-12T06:32:24Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712899#M55298</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;A little old thread but i am trying to figure out how to save over my network.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I currently have tried the using the UNC path but no luck.&lt;/P&gt;&lt;P&gt;like the following but no luck.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="html" __jive_macro_name="code" class="jive_macro_code jive_text_macro _jivemacro_uid_14062349046442674" jivemacro_uid="_14062349046442674" modifiedtitle="true"&gt;
&lt;P&gt;server_backup_path ='\\\\ccdept\\dsd\\GIS\\'&lt;/P&gt;
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Jul 2014 20:49:05 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712899#M55298</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2014-07-24T20:49:05Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712900#M55299</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Some functions trip on UNC paths on occasion so it may be easier to save it locally to the database and move it with shutil.copy to the network location. Also, instead of trying to escape the slashes just flip your slashes forward, or wrap the whole thing in triple quotes and only give it what slashes you really want: """\\ccdept\dsd\GIS"""&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Jul 2014 14:20:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712900#M55299</guid>
      <dc:creator>ChrisMathers</dc:creator>
      <dc:date>2014-07-25T14:20:53Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712901#M55300</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Shutil.copy worked out best.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Jul 2014 17:42:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712901#M55300</guid>
      <dc:creator>TonyAlmeida</dc:creator>
      <dc:date>2014-07-25T17:42:11Z</dc:date>
    </item>
    <item>
      <title>Re: Backing up databases</title>
      <link>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712902#M55301</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Tony,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You may also look into a maintenance plan that is available with SQL Server. You can add a backup database task to the plan and just schedule it. See this &lt;A href="http://msdn.microsoft.com/en-us/library/ms189647.aspx"&gt;microsoft developer network document&lt;/A&gt;.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Jul 2014 19:56:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/backing-up-databases/m-p/712902#M55301</guid>
      <dc:creator>JohnFell</dc:creator>
      <dc:date>2014-07-25T19:56:52Z</dc:date>
    </item>
  </channel>
</rss>

