創建MySQL單實例和主從復制實例需要分別進行配置
創建MySQL單實例:
a. 安裝MySQL服務器。在Ubuntu上,可以使用以下命令安裝:
sudo apt-get update
sudo apt-get install mysql-server
b. 啟動MySQL服務器并設置開機自啟動:
sudo systemctl start mysql
sudo systemctl enable mysql
c. 登錄到MySQL命令行客戶端:
mysql -u root -p
d. 創建一個新的數據庫和用戶,并授予該用戶對新數據庫的訪問權限:
CREATE DATABASE my_database;
CREATE USER 'my_user'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON my_database.* TO 'my_user'@'localhost';
FLUSH PRIVILEGES;
e. 退出MySQL命令行客戶端:
exit
創建MySQL主從復制實例:
a. 在主服務器上,編輯/etc/mysql/mysql.conf.d/mysqld.cnf
文件,添加以下內容:
[mysqld]
server-id=1
log-bin=mysql-bin
bind-address = 0.0.0.0
b. 重啟MySQL服務器:
sudo systemctl restart mysql
c. 登錄到MySQL命令行客戶端:
mysql -u root -p
d. 為復制創建一個專用用戶,并授予該用戶復制權限:
CREATE USER 'repl_user'@'%' IDENTIFIED BY 'repl_password';
GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%';
FLUSH PRIVILEGES;
e. 查看主服務器的狀態:
SHOW MASTER STATUS;
f. 記下File
和Position
的值,稍后在配置從服務器時需要用到。
g. 在從服務器上,編輯/etc/mysql/mysql.conf.d/mysqld.cnf
文件,添加以下內容(使用主服務器的IP地址替換<master_ip>
):
[mysqld]
server-id=2
relay-log=relay-bin
bind-address = 0.0.0.0
h. 重啟MySQL服務器:
sudo systemctl restart mysql
i. 登錄到MySQL命令行客戶端:
mysql -u root -p
j. 配置從服務器連接到主服務器:
CHANGE MASTER TO
MASTER_HOST='<master_ip>',
MASTER_USER='repl_user',
MASTER_PASSWORD='repl_password',
MASTER_LOG_FILE='mysql-bin.000001', -- 使用主服務器的File值
MASTER_LOG_POS= 701; -- 使用主服務器的Position值
k. 啟動從服務器復制進程:
START SLAVE;
l. 查看從服務器狀態,確認復制正常運行:
SHOW SLAVE STATUS\G
現在,您已經成功創建了MySQL單實例和主從復制實例。