Linux之CentOS7開啓MySQL8主從備份、每日定時全量備份

備註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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章