標籤:
一、環境:
1.安裝Centos-6.5-x64位系統的機器兩台:
host1:192.168.2.3
host2:192.168.2.4 (互相能ping通)
2.安裝Mysql。 命令:Yum install mysql-*
二、配置:
1、啟動mysql。命令:service mysqld start
設定mysql的root密碼。命令:mysqladmin –u root password 斷行符號後輸入要設定的密碼即可。
2、建立資料庫test1和表test1。
Create database test1;
Use test1;
Create table test1(id int(5),name varchar(10));
3.配置mysql設定檔:/etc/my.cnf.配置內容如下:
Host1:
[mysqld]
Server-id=1
Log-bin=bin-log
Binlog-ignore-db=mysql,test,infromation_schema
Binlog-do-db=test1
Master-host=192.168.2.4
Master-port=3306
Master-user=root
Master-password=111
Master-retry-count=999
Master-connect-retry=60
Host2:
[mysqld]
Server-id=2
Log-bin=bin-log
Binlog-ignore-db=mysql,test,infromation_schema
Binlog-do-db=test1
Master-host=192.168.2.3
Master-port=3306
Master-user=root
Master-password=110
Master-retry-count=999
Master-connect-retry=60
4.重啟mysql。命令:service mysqld restart
1.如果不能啟動服務,則仔細檢查設定檔是否寫錯,檢查無誤後關閉防火牆。命令:service iptables stop(chkconfig iptables off)。
2.Host1使用mysql –h host2.IP –u root –p 登入host2的mysql看是否成功
3.Host2使用mysql –h host1.IP –u root –p 登入host1的mysql看是否成功
成功說明雙機上的mysql服務和訪問正常。
5.配置授權。
Host1: mysql>grant replivation slave on *.* to ‘root’@‘192.168.2.4’ identified by ‘host1中mysql的root密碼’;
Host2: mysql>grant replivation slave on *.* to ‘root’@‘192.168.2.3’ identified by ‘host2中mysql的root密碼’;
6.host1,host2分別登入本機mysql。Mysql –u root –p 斷行符號輸入密碼。
查看master和slave狀態:
命令:show master status\G;
Show slave status\G;
Host1:
Host2:
結果如所示,slave_IO_Running和slave_SQLRunning都為YES則表示配置成功。
如果出現slave_IO_Running:NO; Last_IO_Error: Got fatal error 1236 from master when reading data from binary log:‘Client requested master to start replication from impossible position‘
的錯誤,則是因為主機記錄檔的配置問題。
解決:使用show master status\G;查看master的file和position的值,然後用一下命令設定:
mysql> stop slave;
mysql> change master to master_log_file=‘file值‘,master_log_pos=position值;
mysql> start slave;
7.測試:
分別在host1和host2的mysql-jhk-test1表中插入不同資料來測試。
結果顯示雙機實現互為熱備份。刪除資料和表測試(略)
[原創]CentOS下Mysql雙機互為備份