mysql5.5 master-slave(Replication)配置方法
更新時(shí)間:2011年08月09日 16:53:29 作者:
mysql5.5 master-slave(Replication)配置方法,需要的朋友可以參考下。
一主一從:
Master:
OS:centos release 5.6 DB:mysql 5.5.8 IP:192.168.1.2
Slave:
OS:centos release 5.6 DB:mysql 5.5.8 IP:192.168.1.3
修改主機(jī)Master配置文件 (/etc/my.cnf)
[mysqld]
//至少要有server-id、與log-bin兩項(xiàng)
server-id=1
log-bin=/var/lib/mysql/mysql-bin
datadir=/var/lib/mysql
//為了使用事務(wù)的InnoDB在復(fù)制中最大的持久性和一致性,你應(yīng)該指定innodb_flush_log_at_trx_commit=1,sync_binlog=1選項(xiàng)
innodb_flush_log_at_trx_commit=1
sync_binlog=1
在主機(jī)Master創(chuàng)建一個(gè)有復(fù)制權(quán)限的用戶
mysql>create user repl_user@192.168.1.3;
mysql>grant replication slave on *.* to repl_user@192.168.1.3 identified by '123456';
鎖住主機(jī),記錄二進(jìn)制日志的位置(后面設(shè)置從機(jī)的時(shí)候會(huì)用到)
mysql>flush tables with read lock;
mysal>show master status;
File:mysql-bin.000013 Position:7863951
復(fù)制主機(jī)數(shù)據(jù)庫(kù)(test)到從機(jī)
shell>/usr/bin/mysqldump test -uroot -padmin --opt | mysql test -uroot -padmin -h 192.168.1.3
重新打開(kāi)主機(jī)Master寫(xiě)操作功能
mysql>unlock tables;
修改從機(jī)Slave配置文件(/etc/my.cnf)
[mysqld]
server-id=2 //必須是1到2的32次方之間的一個(gè)整數(shù),且必須和主機(jī)Master的server-id不一樣
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
replicate-do-db=test //指定復(fù)制數(shù)據(jù)庫(kù)
datadir=/var/lib/mysql
從機(jī)Slave初始化復(fù)制
mysql>slave stop;
mysql>change master to master_host='192.168.1.2',
->master_user='repl_user',
->master_password='123456',
->master_log_file='mysql-bin.000013',
->master_log_pos=7863951;
開(kāi)啟復(fù)制
mysql>start slave;
查看復(fù)制狀態(tài)
mysql>show slave status\G
測(cè)試復(fù)制:
在主機(jī)master中對(duì)test數(shù)據(jù)庫(kù)進(jìn)行sql操作,再查看從機(jī)test數(shù)據(jù)庫(kù)是否產(chǎn)生同步。
Slave SQL錯(cuò)誤導(dǎo)致同步卡住的一種處理方法
mysql>slave stop;
mysql>set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql>slave start;
Master:
OS:centos release 5.6 DB:mysql 5.5.8 IP:192.168.1.2
Slave:
OS:centos release 5.6 DB:mysql 5.5.8 IP:192.168.1.3
修改主機(jī)Master配置文件 (/etc/my.cnf)
復(fù)制代碼 代碼如下:
[mysqld]
//至少要有server-id、與log-bin兩項(xiàng)
server-id=1
log-bin=/var/lib/mysql/mysql-bin
datadir=/var/lib/mysql
//為了使用事務(wù)的InnoDB在復(fù)制中最大的持久性和一致性,你應(yīng)該指定innodb_flush_log_at_trx_commit=1,sync_binlog=1選項(xiàng)
innodb_flush_log_at_trx_commit=1
sync_binlog=1
在主機(jī)Master創(chuàng)建一個(gè)有復(fù)制權(quán)限的用戶
mysql>create user repl_user@192.168.1.3;
mysql>grant replication slave on *.* to repl_user@192.168.1.3 identified by '123456';
鎖住主機(jī),記錄二進(jìn)制日志的位置(后面設(shè)置從機(jī)的時(shí)候會(huì)用到)
mysql>flush tables with read lock;
mysal>show master status;
File:mysql-bin.000013 Position:7863951
復(fù)制主機(jī)數(shù)據(jù)庫(kù)(test)到從機(jī)
shell>/usr/bin/mysqldump test -uroot -padmin --opt | mysql test -uroot -padmin -h 192.168.1.3
重新打開(kāi)主機(jī)Master寫(xiě)操作功能
mysql>unlock tables;
修改從機(jī)Slave配置文件(/etc/my.cnf)
復(fù)制代碼 代碼如下:
[mysqld]
server-id=2 //必須是1到2的32次方之間的一個(gè)整數(shù),且必須和主機(jī)Master的server-id不一樣
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
replicate-do-db=test //指定復(fù)制數(shù)據(jù)庫(kù)
datadir=/var/lib/mysql
從機(jī)Slave初始化復(fù)制
復(fù)制代碼 代碼如下:
mysql>slave stop;
mysql>change master to master_host='192.168.1.2',
->master_user='repl_user',
->master_password='123456',
->master_log_file='mysql-bin.000013',
->master_log_pos=7863951;
開(kāi)啟復(fù)制
mysql>start slave;
查看復(fù)制狀態(tài)
mysql>show slave status\G
測(cè)試復(fù)制:
在主機(jī)master中對(duì)test數(shù)據(jù)庫(kù)進(jìn)行sql操作,再查看從機(jī)test數(shù)據(jù)庫(kù)是否產(chǎn)生同步。
Slave SQL錯(cuò)誤導(dǎo)致同步卡住的一種處理方法
復(fù)制代碼 代碼如下:
mysql>slave stop;
mysql>set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql>slave start;
您可能感興趣的文章:
- mysql容器之間的replication配置實(shí)例詳解
- MySQL-group-replication 配置步驟(推薦)
- MySQL5.6 Replication主從復(fù)制(讀寫(xiě)分離) 配置完整版
- MySQL Semisynchronous Replication介紹
- MySQL 5.7增強(qiáng)版Semisync Replication性能優(yōu)化
- MySQL-MMM安裝指南(Multi-Master Replication Manager for MySQL)
- 基于mysql replication的問(wèn)題總結(jié)
- mysql5.5 master-slave(Replication)主從配置
- MySQL主從復(fù)制之半同步semi-sync?replication
相關(guān)文章
利用Mysql定時(shí)+存儲(chǔ)過(guò)程創(chuàng)建臨時(shí)表統(tǒng)計(jì)數(shù)據(jù)的過(guò)程
這篇文章主要介紹了利用Mysql定時(shí)+存儲(chǔ)過(guò)程創(chuàng)建臨時(shí)表統(tǒng)計(jì)數(shù)據(jù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03MySQL創(chuàng)建表時(shí)字符串的默認(rèn)值問(wèn)題
這篇文章主要介紹了MySQL創(chuàng)建表時(shí)字符串的默認(rèn)值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10關(guān)于mysql中的json解析函數(shù)JSON_EXTRACT
這篇文章主要介紹了關(guān)于mysql中的json解析函數(shù)JSON_EXTRACT講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07mysql如何將sql查詢的結(jié)果以百分比展示出來(lái)
這篇文章主要給大家介紹了關(guān)于mysql如何將sql查詢的結(jié)果以百分比展示出來(lái)的相關(guān)資料,用到了MySQL字符串處理中的兩個(gè)函數(shù)concat()和left()實(shí)現(xiàn)查詢結(jié)果以百分比顯示,需要的朋友可以參考下2023-08-08mysql之delete刪除記錄后數(shù)據(jù)庫(kù)大小不變
這篇文章主要介紹了mysql之delete刪除記錄后數(shù)據(jù)庫(kù)大小不變的相關(guān)資料,需要的朋友可以參考下2016-06-06