所以我需要做的是備份我的 Microsoft Sql 資料庫并從資料庫中洗掉 6 個月前的資料。這兩個程序都必須自動化。現在我被困在備份上。我一直在研究不同的東西并試圖應用它們,但我發現的大部分幫助都與 microsoft sql 以外的資料庫系統有關。
例如我找到了以下代碼
for db_name in db_names:
try:
file_path = ''
dumper = " -U %s --password -Z 9 -f %s -F c %s "
os.putenv('PGPASSWORD', db_password)
bkp_file = '%s_%s.sql' % (db_name, time.strftime('%Y%m%d_%H_%M_%S'))
glob_list = glob.glob(dump_dir db_name '*' '.pgdump')
file_path = os.path.join(dump_dir, bkp_file)
command = 'pg_dump' dumper % (db_username, file_path, db_name)
subprocess.call(command, shell=True)
subprocess.call('gzip ' file_path, shell=True)
except:
print("Couldn't backup database" % (db_name))
上面的代碼給了我以下錯誤
'sqldumper' is not recognized as an internal or external command,
operable program or batch file.
'gzip' is not recognized as an internal or external command,
operable program or batch file.
我認為這是因為這種方法用于 postgres sql 資料。
任何指南或教程或任何其他型別的幫助都受到高度贊賞。
uj5u.com熱心網友回復:
對于 MS SQL,您可以針對此命令調整代碼:
sqlcmd -S localhost -U SA -Q "BACKUP DATABASE [demodb] TO DISK = N'/var/opt/mssql/data/demodb.bak' WITH NOFORMAT, NOINIT, NAME = 'demodb-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
更多資訊可以在這里找到:https : //docs.microsoft.com/en-us/sql/linux/sql-server-linux-backup-and-restore-database?view=sql-server-ver15
uj5u.com熱心網友回復:
我想知道,你是如何運行 python 腳本的。您收到的那些錯誤,可能來自 Windows 命令提示符。確保在上面的 python 代碼中匯入 gzip 模塊。以下是 MySQL 的一個示例:[用于 MySQL 資料庫備份的 Python 腳本][1] [1]:https://tecadmin.net/python-script-for-mysql-database-backup/
稍后,如果您使用的是 Linux,為了自動化腳本,您可以隨時使用 cron 作業來運行它。對于 Windows,您可以使用 Windows 任務計劃程式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/402667.html
標籤:
下一篇:每年的MAXAVG分數
