mysql一主多從配置詳情


https://www.cnblogs.com/zgx/archive/2011/09/13/2174823.html

 

1、准備好3台虛機,一台master,兩台slave且都安裝好mysql

2、主服務器上登錄mysql,創建要同步的庫及表

mysql> mysql -uroot -p111111; mysql> CREATE DATABASE NAME; mysql> use NAME; mysql> CREATE TABLE T_NAME(id int,name varchar(20))

3、主服務器新建用戶並賦予“REPLICATION SLAVE”的權限(注:mysql8.0版本分三步執行)

mysql> create user 'mslave'@'X.X.X.X' identified by 'password' mysql> grant all privileges on *.* to 'mslave'@'X.X.X.X' with grant option; ( grant 權限列表 on 數據庫 to 用戶名@訪問主機) mysql> flush privileges;

其中:X.X.X.X 為從服務器的ip地址 例如 192.168.50.% 表示該網段下的從服務器

*.* 為當前服務器所有庫所有表

with grant option 為表示該用戶可以將自己擁有的權限授權給別人

mslave 為可設置的新用戶名

password 為可設置的密碼

flush privileges 命令本質上的作用是將當前user和privilige表中的用戶信息/權限設置從mysql庫(MySQL數據庫的內置庫)中提取到內存里。MySQL用戶數據和權限有修改后,希望在"不重啟MySQL服務"的情況下直接生效,那么就需要執行這個命令。通常是在修改ROOT帳號的設置后,怕重啟后無法再登錄進來,那么直接flush之后就可以看權限設置是否生效。而不必冒太大風險。

4、備份數據庫

退出mysql執行備份

mysqldump -uroot -p111111 -B hac>hac.sql

5、遠程拷貝到從服務器中

scp 要拷貝的文件 遠程服務器ip:/遠程目錄

例子:scp hac.sql 192.168.50.131:/root

6、修改master服務器上的配置文件(/etc/my.cnf)

log-bin=mysql-bin-master //啟用主服務器的二進制的名稱 server-id=1 //不能重復 binlog-do-db=要同步的數據庫 //同步多個就寫多條 binlog-ignore-db=mysql //不同步的數據庫

7、重啟mysql

systemctl restart mysqld

8、從服務器-導入mysql腳本

mysql -uroot -p111111 <hac.sql

9、從服務器-測試腳本導入是否成功

mysql -uroot -p111111 -e "show databases"

10、從服務器 - 配置etc/my.cnf文件

server-id =2

11、從服務器-重啟mysql

systemctl restart mysqld

12、查看master狀態

mysql> show master status;

13、從服務器嘗試連接主服務器(注意防火牆關閉)

mysql -umslave -p111111 -h 192.168.50.130

14、查看定義的二進制同步文件

ll /var/lib/mysql -rw-r-----. 1 mysql mysql 155 Aug 15 03:30 mysql-bin-master.000001 -rw-r-----. 1 mysql mysql 26 Aug 15 03:30 mysql-bin-master.index

mysql查看二進制文件的記錄

show binlog events \G

15、從服務器-關掉

stop slave;

16、從服務器-配置主服務器

change master to master_host='192.168.50.130',master_user='mslave',master_password='1111111';

17、從服務器-啟動

start slave;

18、從服務器-檢查主從是否配置成功

show slave status \G

 

 

 

Q:配置好后未同步

A:檢查是否開啟同步

mysql> set sql_log_bin=on;

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM