MySQL主從設置
MySQL主從復制,讀寫分離的設置非常簡單:
修改配置my.cnf文件
master 和 slave設置的差不多:
[mysqld]
log-bin=mysql-bin
server-id=222
log-bin=mysql-bin
的意思是:啟用二進制日志。
server-id=222
的意思是設置了服務器的唯一ID,默認是1,一般取IP最后一段,可以寫成別的,只要不和其他mysql服務器重復就好。
這里,有的MySQL默認的my.cnf
文件引用了/etc/mysql/conf.d
路徑下的所有cnf文件,因此,也可以在/etc/mysql/conf.d
目錄下添加一個cnf文件,添加上以上內容
分別重啟master和slave機器的mysql
/etc/init.d/mysql restart
master上建立賬戶并授權slave,slave上也做好相關配置
用root用戶分別登錄master和slave機器:
mysql -uroot -p //輸入之后會讓你輸入root密碼,輸入root密碼就算登陸了
master機器上
建立賬戶并授權slave機器,注意用戶名和密碼,可以隨意設置,但是一定要記下來,因為后面slave還需要用到
GRANT REPLICATION SLAVE ON *.* to 'ryugou'@'%' identified by 'ryugou';
一般不用root帳號,@'%'表示所有客戶端都可能連,只要帳號,密碼正確,此處可用具體客戶端IP代替,如192.168.145.226,加強安全。
slave機器上
查看master狀態

在mysql終端輸入
復制代碼 代碼如下:
change master to master_host='xxx.xxx.xxx.xxx',master_user='ryugou',master_password='ryugou',master_log_file='mysql-bin.000004',master_log_pos=120;
master_log_file就是master機器上的對應的內容,master_log_pos也是,注意查看master狀態上的內容。
master_user和master_password就是master機器上授權時設置用戶名和密碼。
啟動從服務器
檢查從服務器復制功能狀態
會出現一個列表

主要看Slave_IO_Running和Slave_SQL_Running 這倆狀態必須都為Yes。
master創建數據庫,從服務器設置用戶訪問權限
在master上創建數據庫 test,會發現在slave上也創建了 test,現在想要讀寫分離,slave上的機器某用戶gou可以訪問它,但是只能讀
grant select on test.* to gou;
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- MySQL主從數據庫搭建方法詳解
- 使用Docker容器搭建MySql主從復制
- MySQL5.7.18主從復制搭建(一主一從)教程詳解
- mysql 5.7 docker 主從復制架構搭建教程
- 基于Docker的MySQL主從復制環境搭建的實現步驟
- MySQL主從搭建(多主一從)的實現思路與步驟