日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

隨著2013年5月17日,阿里集團最后一臺IBM小機在支付寶下線后,毫無疑問,MySQL 已經是當今互聯網公司使用最多的數據庫了,Mysql開源免費,而且可以很方便的橫向擴展來支撐高并發的流量,中小企業使用Mysql一主多從,也可以很方便的實現程序的讀寫分離。

 

MySQL如何不停機維護主從同步?看這篇就夠了,建議收藏!

 

那么在企業里主數據庫不停機的情況,如何做到不停機維護主從同步呢?今天我們就跟大家分享一下企業實際案例。

 

實戰環境

  • Mysql-5.7
  • Xtrabackup-2.4

Xtrabackup 介紹

Percona XtraBackup是一款基于MySQL的服務器的開源熱備份實用程序,在備份過程中不會鎖定數據庫。

它可以備份來自MySQL5.1,5.5,5.6和5.7服務器上的InnoDB,XtraDB和MyISAM表的數據,以及帶有XtraDB的Percona服務器。

 

XtraBack XtraBackup 工具 up 工具

Xtrabackup 本身只能備份InnoDB和XtraDB,不能備份MyISAM。

innobackupex 封裝了xtrabackup的perl腳本,覆蓋了Xtrabackup的功能。它不但可以備份nnodb和xtradb兩種引擎的表,還可以備份myisam引擎的表(在備份myisam表時需要加一個讀鎖)。

 

Xtrabackup特點

備份過程快速、可靠;

備份過程不會打斷正在執行的事務;

能夠基于壓縮等功能節約磁盤空間和流量;

自動實現備份檢驗;

還原速度快;

 

Xtrabackup備份實現原理

 

innobackupex開啟xtrabackup_log監控線程,實時監測redolog文件的變化,將新備份過程重新寫入到事務日志中的日志拷貝至innobackup_log中;

同時開啟xtrabackup拷貝線程,開始拷貝innodb文件,拷貝數據數據結構,記錄當前binlog及position完成備份。

 

全備恢復原理

 

將全備文件進行xtrabackup_log日志回放,并對提交的事務進行重做,同時rollback未提交的事務。并將全備文件復制到mysql 下的data目錄下。

 

主數據庫

 

1、安裝xtrabackup工具

$ yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm$ yum update percona-release$ yum install percona-xtrabackup-24 -y

2、主數據庫全量備

# 全量備份$ innobackupex --defaults-file=/etc/my.cnf --user=root --password=magedu /data/backup
# 保持事務一致性 Apply-log的作用是通過回滾未提交的事務及同步已經提交的事務至數據文件處于一致性狀態,把已提交的事務合并到ibdata文件$ innobackupex --apply-log /data/backup/2020-03-28_19-13-07

3、 將主數據庫備份文件壓縮并拷貝到從數據庫

$ tar czf backup.tar.gz 2020-03-28_19-13-07
$ scp -r /data/backup/backup.tar.gz 172.21.0.8:/data/backup/

4、 主庫授權同步帳號

mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave_passport';mysql> FLUSH PRIVILEGES;

5、查看主庫備份到位置,從庫從備份位置開始同步

$ cat /data/backup/2020-03-28_19-13-07/xtrabackup_binlog_infomysql-bin.000001    1053

 

從數據庫操作

1、從數據全量恢復

$ cd /data/backup/ && tar xf backup.tar.gz$ innobackupex --defaults-file=/etc/my.cnf --user=root --copy-back /data/backup/2020-03-28_19-13-07

2、修改數據文件權限

$ chown -R mysql:mysql /var/lib/mysql

3、 啟動從數據庫

$ systemctl restart mysqld

4、查看主數據庫第五步主庫備份的位置,開始同步

mysql> CHANGE MASTER TO MASTER_HOST='172.21.0.9', 
MASTER_USER='slave', 
MASTER_PASSWORD='slave_passport', 
MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000001', 
MASTER_LOG_POS=1053;

5、開啟主從同步

mysql> start slave;mysql> show slave statusG;
# 下面二個Yes代表已經正常同步了Slave_IO_Running=YesSlave_SQL_Running=Yes

 

總結

Mysql主從同步,雙機熱備、數據備份技術已經成為運維工程師不可缺少的技術之一了,無論在哪個公司總有在用Mysql的。

分享到:
標簽:MySQL
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定