python api接口 mysql 备份_一个好用的Python备份mysql的脚本

1 #!/usr/bin/python

2 ###########################################################

3 #4 #This python script is used for mysql database backup

5 #using mysqldump utility.

6 #7 #Written by : Rahul Kumar

8 #Website: http://tecadmin.net

9 #Created date: Dec 03, 2013

10 #Last modified: Dec 03, 2013

11 #Tested with : Python 2.6.6

12 #Script Revision: 1.1

13 #14 ##########################################################

15

16 #Import required python libraries

17 importos18 importtime19 importdatetime20

21 #MySQL database details to which backup to be done. Make sure below user having enough privileges to take databases backup.

22 #To take multiple databases backup, create any file like /backup/dbnames.txt and put databses names one on each line and assignd to DB_NAME variable.

23

24 DB_HOST = 'localhost'

25 DB_USER = 'root'

26 DB_USER_PASSWORD = '_root_user_password_'

27 #DB_NAME = '/backup/dbnames.txt'

28 DB_NAME = 'db_name'

29 BACKUP_PATH = '/backup/dbbackup/'

30

31 #Getting current datetime to create seprate backup folder like "12012013-071334".

32 DATETIME = time.strftime('%m%d%Y-%H%M%S')33

34 TODAYBACKUPPATH = BACKUP_PATH +DATETIME35

36 #Checking if backup folder already exists or not. If not exists will create it.

37 print "creating backup folder"

38 if notos.path.exists(TODAYBACKUPPATH):39 os.makedirs(TODAYBACKUPPATH)40

41 #Code for checking if you want to take single database backup or assinged multiple backups in DB_NAME.

42 print "checking for databases names file."

43 ifos.path.exists(DB_NAME):44 file1 =open(DB_NAME)45 multi = 1

46 print "Databases file found..."

47 print "Starting backup of all dbs listed in file" +DB_NAME48 else:49 print "Databases file not found..."

50 print "Starting backup of database" +DB_NAME51 multi =052

53 #Starting actual database backup process.

54 ifmulti:55 in_file = open(DB_NAME,"r")56 flength =len(in_file.readlines())57 in_file.close()58 p = 1

59 dbfile = open(DB_NAME,"r")60

61 while p <=flength:62 db = dbfile.readline() #reading database name from file

63 db = db[:-1] #deletes extra line

64 dumpcmd = "mysqldump -u" + DB_USER + "-p" + DB_USER_PASSWORD + " " + db + ">" + TODAYBACKUPPATH + "/" + db + ".sql"

65 os.system(dumpcmd)66 p = p + 1

67 dbfile.close()68 else:69 db =DB_NAME70 dumpcmd = "mysqldump -u" + DB_USER + "-p" + DB_USER_PASSWORD + " " + db + ">" + TODAYBACKUPPATH + "/" + db + ".sql"

71 os.system(dumpcmd)72

73 print "Backup script completed"

74 print "Your backups has been created in '" + TODAYBACKUPPATH + "' directory"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值