python執行mysqldump命令


本文簡單講述如何利用python執行一些sql語句,例如執行mysqldump命令,進行數據庫備份,備份成sql文件
#!/usr/bin/python
#導入os模塊
import os
#導入時間模塊
import time
#導入sys模塊
import sys
#追加mysql的bin目錄到環境變量
sys.path.append('C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin')

#如果不存在backup文件,新建一個
if not os.path.exists('backup'):
    os.mkdir('backup')
#切換到新建的文件夾中
os.chdir('backup')
#def tuplesql(command,server,user,passwd,db,table,filename):
#   return (mysqlcomm,dbserver,dbuser,dbpasswd,dbname,dbtable,exportfile)
#定義一系列參數
mysqlcomm='mysqldump'
dbserver='xxxx.xxxx.com'
dbuser='xxxxxxx'
dbpasswd='xxxxxxxxxxxxxxxxxxxxxxxx'
dbname='xxxxxx'
dbtable='xxxxx'
exportfile='xxxx.sql'
#定義sql的格式
sqlfromat="%s -h%s -u%s -p%s %s %s >%s"
#生成相應的sql語句
sql=(sqlfromat%(mysqlcomm,dbserver,dbuser,dbpasswd,dbname,dbtable,exportfile))

#判斷是否已經有相應的sql文件生成;如果有,就按時間重命名該文件
if os.path.exists(r'qiang.sql'):
    print(time.ctime())
    os.rename('qiang.sql','qiang'+str(time.time())+'.sql')
    print('qiang'+str(time.time)+'.sql')
#執行sql並獲取語句,os.system和subprocess.Popen執行該sql無效果,不知道是怎么回事,后續會繼續關注
result=os.popen(sql)
#對sql執行進行判斷
if result:
    print("backup completed!")
else:
    print("I'm sorry!!!,backup failed!")
 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM