MySQL創(chuàng)建副本數(shù)據(jù)表可以提高數(shù)據(jù)備份,容災(zāi)和負載均衡的效率。下面我們來詳細介紹基于主從復(fù)制實現(xiàn)MySQL數(shù)據(jù)表的副本復(fù)制建立過程。
1. 配置主庫
首先需要切換到主庫的MySQL控制臺,執(zhí)行以下命令: CREATE USER 'repl'@'%' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%'; FLUSH PRIVILEGES; SHOW MASTER STATUS; 其中repl是副本數(shù)據(jù)庫的用戶名,%代表可以從任意IP地址訪問,password是訪問密碼。 在執(zhí)行SHOW MASTER STATUS命令后,會顯示出一個類似于以下的一行記錄: +-----------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +-----------------+----------+--------------+------------------+ | binlog.000001 | 107 | test | | +-----------------+----------+--------------+------------------+ 上圖中的File和Position都是我們后面需要在副本庫中使用的信息。
2. 配置副本庫
接下來需要在副本庫的MySQL控制臺執(zhí)行以下命令: CREATE DATABASE test; USE test; CREATE TABLE userinfo(id INT, name VARCHAR(50), phone VARCHAR(20)); 用戶名和密碼需要和主庫中一樣。 mysql>SHOW MASTER STATUS; mysql>CHANGE MASTER TO master_host='10.0.0.1', master_user='repl', master_password='password', master_log_file='binlog.000001', master_log_pos=107; 其中master_host是主庫的IP地址,master_user和master_password分別是主庫中repl用戶的用戶名和密碼,master_log_file和master_log_pos是主庫SHOW MASTER STATUS命令中顯示的信息。 mysql>START SLAVE; 以上命令會啟動副本庫連接到主庫。
3. 測試復(fù)制
MySQL會自動將主庫中的數(shù)據(jù)同步到副本庫。在主庫上執(zhí)行以下語句新建一條數(shù)據(jù)記錄: USE test; INSERT INTO userinfo(id, name, phone) VALUES(1,'Mike','1234567'); 重啟在副本庫的MySQL控制臺,執(zhí)行以下命令查看userinfo表中是否存在以下新建數(shù)據(jù)記錄: USE test; SELECT * FROM userinfo; 如果副本庫中userinfo表中存在以下記錄,則說明主從復(fù)制已經(jīng)正常工作: +----+------+---------+ | id | name | phone | +----+------+---------+ | 1 | Mike | 1234567 | +----+------+---------+
以上就是基于主從復(fù)制實現(xiàn)MySQL數(shù)據(jù)表的副本復(fù)制建立過程,希望對您有所幫助!
上一篇c json庫編碼