CenOS 6 5下 mysql自動備份

2022-09-17 12:33:14 字數 1116 閱讀 8449

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

代表每天晚上一點建立乙個備份

cenos6 5作為閘道器

入口伺服器 閘道器伺服器 關閉selinux setenforce 0 vim etc selinux config 將selinux enforcing改為selinux disabled 修改防火牆 iptables t nat a postrouting o eth0 j masquerade...

Cenos6 4下遠端連線mysql報錯1130

問題 error1130 host 192.168.0.114 is not allowed to connect to this mysql server 出現此問題,一般是訪問許可權的問題。解決方法 1.linux端登陸mysql,命令 mysql u使用者名稱 p密碼 2.使用mysql資料庫...

Linux6 5下MySQL的安裝

root bogon whereis mysql mysql usr bin mysql usr lib mysql usr share mysql usr share man man1 mysql.1.gz root bogon rpm qa grep mysql mysql community ...