win10上, MySQL 主從複製配置
技術標籤:資料庫(mysql | ORACLE)mysql資料庫主從複製配置win10
文章目錄
1、安裝從服務 MySQL
安裝從服務MySQL 的前提 是 win10 上 已經安裝了 MySQL5.7 。
1)複製 MySQL Server
路徑 :C:\Program Files\MySQL
操作:
1)複製 MySQL Server 5.7
目錄,並修改名稱為 MySQL Server 5.7-s
。
2)將 my-default.ini
配置檔案命名為 my.ini
,
要修改其內容有 端號號,basedir 路徑、datadir路徑。
[client] port=3307 [mysql] port=3307 [mysqld] port=3307 basedir="C:/Program Files/MySQL/MySQL Server 5.7-s/" datadir="C:/ProgramData/MySQL/MySQL Server 5.7-s/Data" sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" explicit_defaults_for_timestamp=true
2)複製 MySQL 資料配置檔案
路徑:C:\ProgramData\MySQL
操作: 複製 MySQL Server 5.7 目錄,並修改名字為 MySQL Server 5.7-s
。
要修改的內容有 端號號,basedir 路徑、datadir路徑。
[client] port=3307 [mysql] port=3307 [mysqld] port=3307 basedir="C:/Program Files/MySQL/MySQL Server 5.7-s/" datadir="C:/ProgramData/MySQL/MySQL Server 5.7-s/Data" secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.7-s/Uploads" sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
3)刪除 auto.cnf 檔案
在 C:\ProgramData\MySQL\MySQL Server 5.7-s\Data
目錄下,找到 auto.cnf
檔案,將其刪除。
說明:
因為 auto.cnf
中配置的 server-uuid 的值必須唯一,否則 主從複製時 兩個server-uuid 相同的服務被認為是同一個服務,沒法複製。
將auto.cnf
刪除後,MySQL啟動時會自動生成新的 auto.cnf
和 新的 server-uuid 值。
注意:不要修改 server-uuid 的值。
4)執行安裝命令
在 C:\Program Files\MySQL\MySQL Server 5.7-s\bin>
目錄,執行如下命令:
mysqld install mysql57-s --defaults-file="C:\Program Files\MySQL\MySQL Server 5.7-s\my.ini"
5)啟動 mysql57-s
在服務列表中,找到 mysql57-s
,右鍵啟動 服務。
2、主從服務的配置
1)主服務的配置
[mysqld]
#伺服器唯一ID,主從不能相同
server-id=1
# 主資料庫的二進位制日誌
log-bin=mysql-bin
#user_db 為資料庫名,user_db,如果備份多個數據庫,重複設定這個選項即可
binlog-do-db=user_db
# 設定不要複製的資料庫(可設定多個)
binlog-ignore-db=information_schema
binlog-ignore-db=mysql
binlog-ignore-db=performance_schema
binlog-ignore-db=sys
2)從服務的配置
[mysqld]
#從伺服器唯一ID
server-id=2
# 主資料庫的二進位制日誌
log-bin=mysql-bin
#啟用中繼日誌
relay-log=mysql-relay
3)主、從服務重啟
略
3、主服務上,建立複製賬號和檢視位置點
在 主服務 上,建立複製專用賬號
grant replication slave on *.* to 'repl_user'@'%' identified by 'repl_user123456';
flush privileges;
在 主服務 上,檢視檔名和位置點
show master status;
4、從服務上,設定主從資料同步
在 從服務 上,做以下操作。
change master to
master_host='127.0.0.1'
,master_port=3306
,master_user='repl_user'
,master_password='repl_user123456'
,master_log_file='mysql-bin.000001'
,master_log_pos=154;
啟動主從複製:
start slave;
檢視執行情況:
show slave status;
Slave_IO_Running
、 Slave_SQL_Running
全部是 Yes ,則說明配置成功。
5、測試
略