>  기사  >  데이터 베이스  >  MySQL主从服务器配置_MySQL

MySQL主从服务器配置_MySQL

WBOY
WBOY원래의
2016-06-01 13:35:47919검색

bitsCN.com

MySQL主从服务器配置

 

主服务器(master)配置,主服务器配置很简单,只需要修改my.cnf配置文件中的两个地方。

修改my.cnf中的server_id属性,主服务器配置为1,即server-id=1。

修改my.cnf中的log-bin属性,例如可以设置为log-bin=/home/china/mysql/mysql-bin

从服务器(slave)配置。  www.bitsCN.com  

修改my.cnf中的server_id属性,修改为与主服务器不同,如server-id=2

登录MySQL后,在命令行输入change master to master_host='master_ip',master_port=3306,master_user='username',master_password='password' ;

使用命令start slave 启动slave线程。

完成以上配置以后,我们可以在主服务器上查看master状态,使用命令show master status ;

同样,我们也可以在从服务器上查看从服务器的状态,show slave status ;

 

完成以上配置以后,我们就完成了MySQL主从服务器的配置,现在我们验证一下:

我们在主服务器上切换到test库上,执行SQL,create table userInfo(id int,name varchar(20));

使用show tables 命令查看,已经建立表userInfo.

 

这时我们到从服务器上看,表userInfo应该也已经建立起来了。

 

同时我们想主服务器表userInfo中插入数据的话,从服务器也会自动插入数据的。

 

如果从服务器并没有同步主服务器的数据,并且查看从服务器状态时,发现有一下错误信息:

“Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file'”

 

这是由于主从服务器数据不同步造成的,这时可以通过以下几步来处理:

在从服务器上使用命令stop slave停止从服务器。

在主服务器上使用命令flush logs 刷新主服务器日志信息。

在主服务器上使用命令show master status ;查看主服务器状态,主要关注日志文件名称和位置偏移量(position)。

在从服务器上执行命令change master to master_log_file='mysql-bin.00004',master_log_pos=397;注意文件名和position和主服务器上对应。

使用命令start slave;启动从服务器的slave线程。

再次在主服务器表中插入数据,就应该能够正常同步了。

 

bitsCN.com
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.