mysql 5.7.21 主从_Mysql 5.7.21 设置主从库同步
主從復制條件:
Mysql 單機多實例安裝參考Mysql 5.7.21 設置主從庫同步 下面的操作是多實例主從復制,3306為主庫,3307為從庫。
主庫要開啟log-bin,主庫和從庫的server-id要不一樣,修改/etc/my.cnf配置
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld
mysqladmin = /usr/local/mysql/bin/mysqladmin
log = /tmp/mysql_multi.log
user = mysql
pass = 123456
[mysqld1]
datadir = /usr/local/data
socket = /tmp/mysql.sock1
port = 3306
user = mysql
performance_schema = off
innodb_buffer_pool_size = 32M
bind_address = 0.0.0.0
skip-name-resolve = 0
server-id=1
log-bin=/usr/local/data/mysql-bin
[mysqld2]
datadir = /usr/local/data3307
socket = /tmp/mysql.sock2
port = 3307
user = mysql
performance_schema = off
innodb_buffer_pool_size = 32M
bind_address = 0.0.0.0
skip-name-resolve = 0
server-id=2
在主庫上面創建同步用戶:
mysql>grant replication slave on *.* to 'rep'@'%' identified by '123456'; #后面的密碼要設置復雜些。
mysql> flush privileges;
導出主庫數據文件: 3.1 常規方法,進入主庫:
mysql> flush table with read lock; #先鎖表,鎖表后不能退出mysql窗口,否則失效
mysql> show master status; #記錄bin-log的位置信息
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000004 | 560 | | |
+------------------+----------+--------------+------------------+
mysql> exit
mysqldump -uroot -p -S /data/3306/mysql.sock --events -A -B|gzip >/tmp/bak_$(date +%F).sql.gz
mysql> unlock tables; #解鎖數據庫
3.2 快捷方法:
mysqldump -uroot -p -S /data/3306/mysql.sock --events -A -B -F --master-data=2 -x|gzip >/tmp/bak_f_$(date +%F).sql.gz
-x 自動鎖表
-F --master-data=2 以備注形式記錄bin-log的位置。(可以打開文件看頭部備注信息)
還原備份內容到從庫:
gzip -d bak_f_2018-03-26.sql.gz
mysql -uroot -p -S /tmp/mysql.sock2 < bak_f_2018-03-26.sql
連接從庫,并執行:mysql -uroot -p123456 -S /tmp/mysql.sock2
CHANGE MASTER TO
MASTER_HOST='172.16.1.214',
MASTER_PORT=3306,
MASTER_USER='rep',
MASTER_PASSWORD='Root1234',
MASTER_LOG_FILE='mysql-bin.000004',
MASTER_LOG_POS=560;
mysql> start slave; #開啟同步
mysql> show slave status \G ; #查看同步狀態信息
監控mysql主從復制的狀態指標:
mysql -uroot -p123456 -S /data/3307/mysql.sock -e "show slave status \G ;" | egrep -i "_Running|_Behind"
Slave_IO_Running: Yes #同步進程是否啟動
Slave_SQL_Running: Yes #sql進程是否啟動
Seconds_Behind_Master: 0 #從庫同步完成需要的時間
總結
以上是生活随笔為你收集整理的mysql 5.7.21 主从_Mysql 5.7.21 设置主从库同步的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: centos mysql pmm_【My
- 下一篇: mysql 查看索引深度_mysql 学
