mysql主從複製配置實戰

目錄

原理介紹

環境說明

配置步驟

實例測試

異常問題

 

 


原理介紹

 

環境說明

windows系統

兩個mysql,一主一從(同一臺機器安裝多個mysql方法

master:127.0.0.1:3306    root  123456

slave:127.0.0.1:3307    root  123456

 

配置步驟

  • 配置master庫的my.ini (linux下是my.cnf)

在[mysqld]下添加

log-bin=mysql-bin

server-id=1 (這個標識不能跟從庫的一樣)

 

  • 創建同步賬戶(直接使用root也可以)

CREATE USER 'slave01'@'127.0.0.%' IDENTIFIED BY '123456';

GRANT REPLICATION SLAVE ON *.* TO 'slave01'@'127.0.0.%';

FLUSH PRIVILEGES;

 

  • 查看主機狀態

Show master status;

 

  • 配置從庫my.ini文件(linux下是my.cnf)

設置server-id=2 (不能個主庫一樣)

 

  • 從庫執行監視主機日誌語句

change master to master_host='127.0.0.1',

master_user='slave01',

master_password='123456',

master_log_file='mysql-bin.000002', #這個要和上面的file對應

master_log_pos=430;   #這個要和上面的Position對應

 

 

 

  • 啓動從機複製,查看從機狀態

Start slave;

Show slave status\G;

 

實例測試

  • 主庫創建一張表

CREATE TABLE `test_1` (

  `id` varchar(64) NOT NULL COMMENT '編號',

  `name` varchar(100) DEFAULT NULL COMMENT '名稱',

  `sex` char(1) DEFAULT NULL COMMENT '性別',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='測試表';

 

查看從庫

 

  • 主庫插入一條數據

INSERT INTO test_1 VALUES ('1111','張三','1');

 

查看從庫

 

 

 

 異常問題

  • Slave_IO_Running: NO

由於從庫我是直接複製出來的,所以從庫的uuid跟主庫是一致的,因此會導致這個問題,只要修改從庫auto.cnf(C:\ProgramData\MySQL\MySQL Server 5.7-s1\Data中)的uuid後,重啓數據庫。

 

 

讀寫分離將在下一篇介紹。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章