CentOS7開啟MySQL8主從備份、每日定時全量備份(推薦)
阿新 • • 發佈:2020-01-09
備註1:解決連線MySQL資料庫很慢的問題
vim /etc/my.cnf
新增內容:skip-name-resolve
,重啟資料庫。
備註2:(密碼帶!或其他特殊符合,前面加\,例如123!321-->123\!321)
1、主從備份
主資料庫: vim /etc/my.cnf [mysqld]下新增內容: server-id = 1 log-bin=mysql-bin relay-log = mysql-relay-bin replicate-wild-ignore-table=mysql.% replicate-wild-ignore-table=test.% replicate-wild-ignore-table=information_schema.% 從資料庫: vim .etc/my.cnf [mysqld]下新增內容: server-id = 2 log-bin=mysql-bin relay-log = mysql-relay-bin replicate-wild-ignore-table=mysql.% replicate-wild-ignore-table=test.% replicate-wild-ignore-table=information_schema.% 重啟主從資料庫 登入主資料庫 mysql -uusername -ppassword mysql>show master status; 找到master_log_file、master_log_pos(一般是mysql-bin.000001和155) mysql>change master to \ mysql>master_host='從資料庫IP',mysql>master_user='從資料庫使用者',mysql>master_password='從資料庫密碼',mysql>master_log_file='從資料庫master_log_file',mysql>master_log_pos='從資料庫master_log_pos'; mysql>start slave; mysql>show slave status\G 登入從資料庫 mysql -uusername -ppassword mysql>show master status; 找到master_log_file、master_log_pos(一般是mysql-bin.000001和155) mysql>change master to \ mysql>master_host='主資料庫IP',mysql>master_user='主資料庫使用者',mysql>master_password='主資料庫密碼',mysql>master_log_file='主資料庫master_log_file',mysql>master_log_pos='主資料庫master_log_pos'; mysql>start slave; mysql>show slave status\G
到這裡,資料庫的主從備份開啟成功,趕緊去試試效果吧!
2、每日定時全量備份
cd ../usr/local/src/dbback 如果沒有dbback就新加一個資料夾 vi bkDatabaseName.sh (沒有會自動新加此檔案) 複製內容: #!/bin/bash source /etc/profile mysqldump -uusername -ppassword DatabaseName | gzip > /usr/local/src/dbback/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz 儲存。 新增可執行許可權:chmod u+x bkDatabaseName.sh 新增可執行許可權之後先執行一下,看看指令碼有沒有錯誤,能不能正常使用; ./bkDatabaseName.sh 然後看看有沒有生成壓縮檔案 新增計劃任務
1、安裝 crontab
下載crontab:點選下載
下載後放入/usr/local/src/crontab目錄下
cd ../usr/local/src/crontab
安裝
rpm -ivh --nodeps --force *.rpm
新增計劃任務
執行命令:
crontab -e
新增內容:(每天凌晨1點執行備份)
0 1 * * * ../usr/local/src/dbback/bkDatabaseName.sh
總結
以上所述是小編給大家介紹的CentOS7開啟MySQL8主從備份、每日定時全量備份,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!