zoukankan      html  css  js  c++  java
  • CenOS 6.5下 mysql自动备份

     
    1、mysql备份命令是mysqldump,自动执行可以用cron,但是文件名需要带有时间标志,shell处理起来很麻烦,我就选择了python来解决
    2、文件名用time模块来解决,执行系统命令用os.system,
         需要注意的是,我是在CenOS6.5上测试的,默认安装的python不包含time,需要更新,命令为yum install python
    3、代码如下
    #file_name create_bf.py
    import os
    import time
    #备份文件目录
    file_path = '/opt/mysql_backup/'
    command_path = '/opt/lampstack-5.4.26-0/mysql/bin/'
    #时间格式
    time_now = time.strftime('%Y-%m-%d-%H-%M-%S')
    #备份文件名
    mysql_back_file_name = 'mysql-'+time_now+'.sql'
    #压缩文件名
    mysql_gz_file_name = 'mysql-'+time_now+'.gz'
    #备份文件
    os.system(command_path+'mysqldump dbname -uroot -proot >'+file_path+mysql_back_file_name)
    #压缩文件
    os.system('cd '+file_path+';tar zcvf '+mysql_gz_file_name+' '+mysql_back_file_name)
    #删除原始文件
    os.system('rm '+file_path+mysql_back_file_name)   
    需要注意的一点是,在压缩文件时,需要进入备份目录来执行,所以有一个cd命令,如果写成两个os.system,好像不好用
    最终创建的文件名类似如下
    mysql-2014-04-15-11-20-01.gz
    4、cron设置
       crontab -e
    0 1 * * * python /opt/mysql_backup/create_bf.py
    代表每天晚上一点创建一个备份
     
  • 相关阅读:
    数据库更改自增和主键
    修改MySQL的默认数据存储引擎
    tomcat密码的坑
    通过System.getProperties()获取系统参数
    Java语言开发的,直接解压即可使用软件
    一个javascript面试题
    为什么学习差
    IDEA设置
    java关键字
    IDEA快捷键
  • 原文地址:https://www.cnblogs.com/stone-fly/p/3665848.html
Copyright © 2011-2022 走看看