`

Mysql主从配置

阅读更多

 

1 修改master的mysql ,my.cnf文件  

 

注意以下信息必须放在mysqld下面否则不生效 
#ID号, 为1时表示为Master,其中master_id必须为1到232–1之间的一个正整数值;   
server-id=1  
#启用二进制日志;  
log-bin=mysql-bin
#需要同步的二进制数据库名;  
binlog-do-db=my_test
#不同步的二进制数据库名,如果不设置可以将其注释掉;  
binlog-ignore-db=information_schema
binlog-ignore-db=mysql
binlog-ignore-db=personalsite
binlog-ignore-db=test
#设定生成的log文件名;  
log-bin="/usr/local/mysql/data/materlog"
#把更新的记录写到二进制文件中;  
log-slave-updates 

 

2 重新mysql后,查看设置server-id 是否生效 show variables like 'server_id' ; 

 

3 查看master运行的状态参数 : show master status ; 

  注意:其中显示的 File | Position 需要在slave中设置。

 

5 主数据库执行,添加slave中同步数据的时候使用的用户:

 GRANT REPLICATION SLAVE ON *.* TO forslave@192.168.142.137 IDENTIFIED BY '123456';

 

 

6   设置slave中my.cnf信息,其中master开头的 5.1.7版本以后需要用change来设置 ,配置文件不识别 

 

#如果需要增加Slave库则,此id往后顺延;  
	server-id=2
	log-bin=mysql-bin
	#不需要备份的数据库;   
	replicate-ignore-db=mysql
	#需要备份的数据库
	replicate-do-db=my_test
	log-slave-update

	以下信息有的mysql 5.1.7以后版本不支持了,需要去掉 ,使用change命令设置 
	#主库host  
	master-host=192.168.142.137
	#在主数据库服务器中建立的用于该从服务器备份使用的用户  
	master-user=forslave
	master-password=123456
	master-port=3306
	#如果发现主服务器断线,重新连接的时间差;  
	master-connect-retry=60

 

 

7执行以下命令设置master信息: 主库的ip,同步数据用户用户名和密码 , Master中 show master status ;显示的File | Position信息

 CHANGE MASTER TO MASTER_HOST='192.168.142.136',  MASTER_USER='forslave',  MASTER_PASSWORD='123456',  MASTER_LOG_FILE='materlog.000001', MASTER_LOG_POS=120;

 

 9 如果show variables like 'server_id' 和my.cnf 中设置不一样可以用:set global server_id=1 设置数值和配置文件相同 

 

10 如果slave同步进程停止,则需要重新设置同步的日志的点,Slave_SQL_Running=NO(到主库中show master status,然后设置,会出现部分数据丢失情况 ),更改master的一些信息:

change master to master_log_file='mysql-bin.000004',master_log_pos=98;

 

11 启动和停止slave 

 start slave ;

 show slave status\G;  查看slave运行状态

 看状态:  Slave_IO_Running=Yes      Slave_SQL_Running=Yes 则成功 

  Seconds_Behind_Master是否为0,0就是已经同步了

 

 stop slave 

 

 

 12 查看日志信息如果没有Error则在主库中 

 13 从库中如果没有主库的某些表,则同步的sql进程会停止 ,需要用10中的方式进一步处理 

 

14 读写分离:通过Amoeba 来实现 。

 

15 可以用shell脚本实现主从切换,主异常则切换从为主。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics