mysql主從復(fù)制詳細配置步驟

    1. 關(guān)閉主機器和從機器的防火墻
    1. 主機器配置
    • 2.1 創(chuàng)建一個用戶并且賦予權(quán)限
CREATE USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
GRANT ALL PRIVILEGES ON databasename.* TO 'username'@'hostname';
FLUSH PRIVILEGES;
  • 2.2 配置my.cnf

log-bin:二進制文件
log-error:錯誤記錄文件
binlog-ignore-db:主從同步時忽略的數(shù)據(jù)庫
binlog-do-db:主從同步時要同步的數(shù)據(jù)庫

[mysqld]
log-bin=/var/log/mysql/mysql-bin
general_log=1
general_log_file = /var/log/mysql/mysql.log
log-error=/var/log/mysql/error.log
slow_query_log=ON
slow_query_log_file=/var/log/mysql/mysql_slow_query.log
long_query_time=5
server-id=1
binlog-ignore-db=mysql
binlog-do-db=lottery
  • 2.3 指定哪臺從機器
grant replication slave, reload, super on *.* to 'czl'@'%'
  • 2.4 查看主計算機狀態(tài)
show master status;

顯示結(jié)果如下:


image.png

需要記住position,位置。在從機器上配置需要

    1. 從機器配置
    • 3.1 my.cnf文件配置
[mysqld]
server-id = 2
replicate-do-db = lottery
log-bin = mysql-bin
log-error = mysql-error

配置server-id,和主機不同
配置replicate-do-db,需要同步的數(shù)據(jù)庫
配置log-bin文件,這里我寫的是相對路徑

  • 3.2 指定主機器

進入mysql的從數(shù)據(jù)庫中。執(zhí)行下面命令:

change master to master_host = '47.99.134.39', master_user = 'root', master_password = 'root', master_port = 3306, master_log_file = 'mysql-bin.000001', master_log_pos = 156;

master_log_file,和master_log_pos填入的是上面主機器獲取出來的兩個值。

  • 3.3 開啟同步

如果從機器沒有你要同步的數(shù)據(jù)庫,需要先create database創(chuàng)建數(shù)據(jù)庫,創(chuàng)建后執(zhí)行:

start slave;   # 開啟同步
  • 3.4 查看主從配置是否成功
show slave status\G;
image.png

這兩個值均為yes就代表成功

    1. 未來如果出現(xiàn)主從同步錯誤,可以清空配置重新配置
RESET SLAVE ALL;
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容