mysql的主從配置做全備份方法

本文主要給大家介紹MySQL的主從配置做全備份方法,希望可以給大家補(bǔ)充和更新些知識,如有其它問題需要了解的可以持續(xù)在創(chuàng)新互聯(lián)行業(yè)資訊里面關(guān)注我的更新文章的。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都做網(wǎng)站、威縣網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、威縣網(wǎng)絡(luò)營銷、威縣企業(yè)策劃、威縣品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供威縣建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.muchs.cn

目的:19作為 20的從庫

一在20上做一次全備份

/usr/bin/innobackupex-1.5.1--user=root --password=`cat /etc/savep` --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock  --slave-info--stream=tar /usr/local/backup | gzip >/usr/local/backup/db20.tar.gz

db20.tar.gz copy到 19

--slave-info保存主庫日志文件以及偏移

--stream=tar/usr/local/backup | gzip > /usr/local…壓縮方式

[在使用參數(shù)stream=tar備份的時(shí)候,你的xtrabackup_logfile可能會臨時(shí)放在/tmp目錄下,多實(shí)例 xtrabackup在備份的時(shí)候會生成固定文件/tmp/xtrabackup_logifle,導(dǎo)致互相覆蓋。 --tmpdir= ]

mysql的主從配置做全備份方法

二在19上啟動(dòng)新的實(shí)例

  1. 新建/etc/myNew.cnf注意server id要跟20不一樣 my.cnf server_id xxx

  2. 初始化數(shù)據(jù)庫

3.           scripts/mysql_install_db --user=mysql --datadir=/data/mysqlNew/dataNew  --basedir=/usr/local/mysql

  1. 啟動(dòng)新的實(shí)例待會用于做從庫

5.           /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/myNew.cnf --user=mysql &

三在19上安裝 xtrabackup

舊版本5.1

wgethttp://115.182.52.17/software/xtrabackup-1.6.5-328.rhel6.x86_64.rpm

rpm -ivh xtrabackup-1.6.5-328.rhel6.x86_64.rpm  --nodeps (rpm方式安裝xtrabackup.)

新版本5.6

wget -O/root/soft/percona-xtrabackup-2.2.11-1.el6.x86_64.rpm

http://115.182.52.17/software/percona-xtrabackup-2.2.11-1.el6.x86_64.rpm

rpm -ivh percona-xtrabackup-2.2.11-1.el6.x86_64.rpm  --nodeps

四在19上恢復(fù)主庫的冷備份數(shù)據(jù)

  1. 解壓

2.           mv db20.tar.gz /usr/local/backup/

3.           tar -izxvf db20.tar.gz

這里tar解包必須使用-i參數(shù),否則解壓出來的文件只有一個(gè)backup-my.cnf

  1. 一般情況下,在備份完成后,數(shù)據(jù)尚且不能用于恢復(fù)操作,因?yàn)閭浞莸臄?shù)據(jù)中可能會包含尚未提交的事務(wù)或已經(jīng)提交但尚未同步至數(shù)據(jù)文件中的事務(wù)。因此,此時(shí)數(shù)據(jù)文件仍處理不一致狀態(tài)。--apply-log的作用是通過回滾未提交的事務(wù)及同步已經(jīng)提交的事務(wù)至數(shù)據(jù)文件使數(shù)據(jù)文件處于一致性狀態(tài)。

5.           innobackupex --apply-log . --user=root --password=`cat /etc/savep(不存在密碼就不需要這個(gè)項(xiàng))` --defaults-file=/etc/myNew.cnf

  1. 拷貝數(shù)據(jù)文件

7.           mysqladmin -uroot -S /tmp/mysqlNew.sock shutdown –p停庫刪除

8.           cd /data/mysqlNew/dataNew/

9.           rm -rf*

10.       mv /usr/local/backup/* .

11.       chown -R mysql.mysql*

12.       mysqld_safe  --defaults-file=/etc/myNew.cnf --user=mysql &

tail -f log.err查看是否有報(bào)錯(cuò)

進(jìn)數(shù)據(jù)庫查看數(shù)據(jù)庫是否跟主庫一樣,

至此已經(jīng)把20的數(shù)據(jù)庫冷備份恢復(fù)到19了

五啟動(dòng)同步

  1. 確定主庫冷備份的的binlog位置

2.           cd /data/mysqlNew/dataNew/

3.           cat xtrabackup_binlog_info (如果冷備份是從主庫直接備份的,則使用這個(gè)來確定主庫的binlog位置)

4.           或者catxtrabackup_slave_info(如果冷備份是從主庫的另外一個(gè)從庫簡介備份的,則使用這個(gè)來確定主庫的binlog位置)

  1. 進(jìn)入新實(shí)例,新建同步

6.           mysql -uroot -S /tmp/mysqlNew.sock -p

7.           mysql>change master to

8.           -> master_host='10.0.0.20',

9.           ->master_user='re4399pl',

10.       ->master_port=3306,

11.       ->master_password='re4399plpassword',

12.       ->master_log_file='mysql-bin.000006',

13.       ->master_log_pos=110632233;

上面這步需要現(xiàn)在主庫上創(chuàng)建帳號

GRANT FILE,SELECT,REPLICATION SLAVE ON*.* TO 're4399pl'@'10.0.0.%'IDENTIFIED BY 're4399plpassword';

master_log_filemaster_log_pos就是五.1中的內(nèi)容

  1. 啟動(dòng)同步

15.       mysql>start slave;

16.       mysql>show slave status\G

17.       如果要重啟庫,

18.         1,mysqladmin –uroot –pxxxx   2,mysqld_safe –user=mysql

六其他注意點(diǎn)

  1. 注意多個(gè)實(shí)例的下的不同data目錄和 my.cnf文件

  2. 從庫是不記錄Binlog的如果需要做鏈?zhǔn)酵?從庫開啟binlog:log_slave_updates=1

  3. skip-slave-start有這個(gè)參數(shù),數(shù)據(jù)庫重啟后不會自動(dòng)進(jìn)行同步

  4. 主從廢棄后,應(yīng)該及時(shí) stop slave并 reset slave免得忘記下次又同步

七關(guān)于同步到從庫并過濾部分表的做法

在從庫上添加

replicate-wild-do-table=diygame_admin.%

replicate-wild-ignore-table=diygame_online.diygame_game_data%

replicate-wild-do-table=diygame_online.%

八同步后重定向到另外一個(gè)庫

在從庫上添加

replicate-wild-do-table=diygame_admin.diygame_template_preview

replicate-wild-do-table=3387_base_admin.%

replicate-rewrite-db=diygame_admin->3387_base_admin

replicate-rewrite-db,及僅能重定向庫,不能重定向表,而且還does not workwith cross-database updates

 

十 定時(shí)備份

0 0 * * * /cron/db_backup.sh > /tmp/db_backup.log 2>&1
cat /cron/db_backup.sh
#!/bin/bash
PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/mysql/bin:/usr/local/sbin:/usr/sbin:/sbin
DATE=`date +%Y%m%d`
IPADDR=`/sbin/ifconfig em1|grep 'inet addr'|awk '{print $2}'|awk -F ":" '{print $2}'`

passwd=`cat /etc/savep`
NAME=db185_hebi
mkdir /tmp/$NAME
/usr/bin/innobackupex-1.5.1 --user=root --password=`cat /etc/savep` --defaults-file=/etc/my.cnf --slave-info   --tmpdir=/tmp/$NAME/ --stream=tar /usr/local/backup | gzip > /usr/local/backup/$NAME-$DATE-$IPADDR.tar.gz

cd /usr/local/backup/
/usr/local/bin/rsync -R -avz --progress --password-file=/etc/49cn_pass $NAME-$DATE-$IPADDR.tar.gz  49cn@13.7.3.9::49cn/49cn

find /usr/local/backup/ -type f -mtime +7 | xargs rm -f

看了以上關(guān)于mysql的主從配置做全備份方法,希望能給大家在實(shí)際運(yùn)用中帶來一定的幫助。本文由于篇幅有限,難免會有不足和需要補(bǔ)充的地方,如有需要更加專業(yè)的解答,可在官網(wǎng)聯(lián)系我們的24小時(shí)售前售后,隨時(shí)幫您解答問題的。

網(wǎng)站名稱:mysql的主從配置做全備份方法
當(dāng)前網(wǎng)址:http://www.muchs.cn/article10/ijcpdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、網(wǎng)站營銷、電子商務(wù)定制開發(fā)、網(wǎng)站制作靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)