zoukankan      html  css  js  c++  java
  • 在linux服务器上自动备份数据库

    脚本如下,没有任何问题:

    # !/usr/bin/python
    import os
    import time
    import datetime
    import pipes
    import glob

    DB_HOST = '192.168.44.158'
    DB_USER = 'root'
    DB_USER_PASSWORD = 'MyNewPass4!'
    DB_NAME = 'hanwo'
    BACKUP_PATH = '/mnt/dbbackup/mysql/'
    DATETIME = time.strftime('%Y%m%d-%H%M%S')
    TODAYBACKUPPATH = BACKUP_PATH + '/' + DATETIME

    try:
    os.stat(TODAYBACKUPPATH)
    except:
    os.mkdir(TODAYBACKUPPATH)
    print("checking for databases names file.")
    if os.path.exists(DB_NAME):
    file1 = open(DB_NAME)
    multi = 1
    print("Databases file found...")
    print("Starting backup of all listed in file" + DB_NAME)
    else:
    print("Databases file not found...")
    print("Starting backup of database" + DB_NAME)
    multi = 0

    if multi:
    in_file = open(DB_NAME, "r")
    flength = len(in_file.readlines())
    in_file.close()
    p = 1
    dbfile = open(DB_NAME, "r")

    while p <= flength:
    db = dbfile.readline()
    db = db[:-1]
    dumpcmd = "mysqldump -h " + DB_HOST + " -u " + DB_USER + " -p" + DB_USER_PASSWORD + " " + db + " > " + pipes.qute(
    TODAYBACKUPPATH) + "/" + db + ".sql"
    os.system(dumpcmd)
    gzipcmd = "gzip" + pipes.quote(TODAYBACKUPPATH) + "/" + db + ".sql"
    os.system(gzipcmd)
    p = p + 1
    dbfile.close()
    else:
    db = DB_NAME
    dumpcmd = "mysqldump -h " + DB_HOST + " -u " + DB_USER + " -p" + DB_USER_PASSWORD + " " + db + " > " + pipes.quote(
    TODAYBACKUPPATH) + "/" + db + ".sql"
    os.system(dumpcmd)
    gzipcmd = " gzip " + pipes.quote(TODAYBACKUPPATH) + "/" + db + ".sql"
    os.system(gzipcmd)
    path_file_number = glob.glob(BACKUP_PATH)
    print(len(path_file_number))
    print("")
    print("Backup script completed")
    print("Your backups have been created in '" + TODAYBACKUPPATH + "' directort")
  • 相关阅读:
    jquery属性
    jquery选择器
    Django的模型
    win7安装RabbitMQ
    阿里云RDS备份的tar格式包恢复到本地自建数据库
    正确使用 Volatile 变量
    深入分析Volatile的实现原理
    volatile和synchronized的区别
    全面理解Java内存模型
    深入理解Feign之源码解析
  • 原文地址:https://www.cnblogs.com/liuage/p/10996547.html
Copyright © 2011-2022 走看看