MySQL 主从复制
MySQL 主从复制(master->slave) 1、在MASTER主机(192.168.128.132)上创建数据库mytest: create database mytest; 然后配置my.cnf 在[mysqld]配置段添加如下字段中增加 log-bin=mysql-bin.log binlog-do-db=mytest #要同步的数据库的名字 server-id=1 *************************************************************************** server-id=1 binlog-do-db=test auto_increment_increment=4 auto_increment_offset= 1 log-bin=/var/lib/mysql/master-bin.log log-bin-index = /var/lib/mysql/master-log-bin.index log-error = /var/lib/mysql/master-error.log relay-log = /var/lib/mysql/slave-relay.log relay-log-info-file = /var/lib/mysql/slave-relay-log.info relay-log-index = /var/lib/mysql/slave-relay-log.index set-variable=max_connections=500 ************************************************************************** 重启mysql 进入MySQL,然后同步账号: mysql>grant replication slave on *.* to ‘repl’@'%’ identified by ‘aaa’; mysql>show master status; +——————+———-+————–+——————+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +——————+———-+————–+——————+ | mysql-bin.000008 | 106 | blog | | +——————+———-+————–+——————+ 2、配置SLAVE数据库(192.168.128.130 and 192.168.128.133) 分别进入MySQL创建数据库 mysql>create database mytest; #建一个与主服务器的数据库名字相同的数据库 mysql>quit; 3、在两个SLAVE数据库的[mysqld]配置段添加如下字段中增加 # 192.168.128.130 server-id=2 master-host=192.168.128.132 master-user=replication master-password=aaa master-connect-retry=60 replicate-do-db=mytest # 192.168.128.133 server-id=3 master-host=192.168.128.132 master-user=replication master-password=aaa master-connect-retry=60 replicate-do-db=mytest 3、分别重启两个SLAVE数据库 4、分别进入两个SLAVE数据库中 在SLAVE1上(192.168.128.130) mysql> slave stop; Query OK, 0 rows affected (0.00 sec) mysql> CHANGE MASTER TO -> MASTER_HOST=’192.168.128.132′, -> MASTER_USER=’replication’, -> MASTER_PASSWORD=’aaa’, -> MASTER_LOG_FILE=’mysql-bin.000008′, -> MASTER_LOG_POS=106; Query OK, 0 rows affected (0.03 sec) mysql> START SLAVE; Query OK, 0 rows affected (0.00 sec) 在SLAVE2上(192.168.128.133) mysql> slave stop; Query OK, 0 rows affected (0.00 sec) mysql> CHANGE MASTER TO -> MASTER_HOST=’192.168.128.132′, -> MASTER_USER=’replication’, -> MASTER_PASSWORD=’aaa’, -> MASTER_LOG_FILE=’mysql-bin.000008′, -> MASTER_LOG_POS=106; Query OK, 0 rows affected (0.03 sec) mysql> START SLAVE; Query OK, 0 rows affected (0.00 sec) 然后,随便在那个SLAVE上 mysql> show processlist; +—-+————-+———–+——+———+——+———————————————————————–+——————+ | Id | User | Host | db | Command | Time | State | Info | +—-+————-+———–+——+———+——+———————————————————————–+——————+ | 3 | root | localhost | NULL | Query | 0 | NULL | show processlist | | 4 | system user | | NULL | Connect | 13 | Waiting for master to send event | NULL | | 5 | system user | | NULL | Connect | 13 | Has read all relay log; waiting for the slave I/O thread to update it | NULL | +—-+————-+———–+——+———+——+———————————————————————–+——————+ 以上信息表示同步成功! 4、同步测试过程 分别在主数据库上建立一个表,插入一条数据 在两个从数据库上看看是否更新 过程略。
我和谁都不争,和谁争我都不屑,我爱大自然,其次就是艺术,我双手烤着生命之火取暖,火萎了,我也准备走了。
浙公网安备 33010602011771号