天天看點

mysql 主從複制

配置兩台mysql伺服器

主機: 192.168.80.134  

從機: 192.168.80.136  

更改主機配置    # vi /etc/my.cnf

在[mysqld]下添加如下配置

log-bin=mysql-bin

server-id=134

注意 在叢集下 server-id不能重複  是以我将ip最後一位作為server-id

  更改從機配置 # vi /etc/my.cnf

server-id=136

注意server-id 不能和主機重複

在主機中登入mysql  

 # mysql -u root -p 

登入後運作 show master status;

+------------------+----------+--------------+------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

| mysql-bin.000001 |      106 |              |                  |

1 row in set (0.00 sec)

此時主機别動   到從機配置

在從機上登入 # mysql -u root -p

登入從機運作

mysql> change master to

    -> master_host='主機IP',

    -> master_user='主機使用者名',

    -> master_password='主機密碼',

    -> master_log_file='mysql-bin.000001',

    -> master_log_pos=106;   

 Mysql>start slave;

=========================================

SHOW VARIABLES LIKE 'server_id';檢視配置檔案中設定的id

+---------------+-------+

| Variable_name | Value |

| server_id     | 0     |

發現server_id沒變

既然參數檔案不生效,就試試在資料庫指令裡面設定:

 SET GLOBAL server_id=136;

slave start

query ok 主從配置成功

 從資料庫中資料随着主庫資料變化而變化