MySQL主从服务器配置

1 篇文章 0 订阅
1 篇文章 0 订阅
  • 主服务器(master)配置,主服务器配置很简单,只需要修改my.cnf配置文件中的两个地方。
  1. 修改my.cnf中的server_id属性,主服务器配置为1,即server-id=1。
  2. 修改my.cnf中的log-bin属性,例如可以设置为log-bin=/home/china/mysql/mysql-bin
  • 从服务器(slave)配置。
    1. 修改my.cnf中的server_id属性,修改为与主服务器不同,如server-id=2
    2. 登录MySQL后,在命令行输入change master to master_host='master_ip',master_port=3306,master_user='username',master_password='password' ;
    3. 使用命令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'”

这是由于主从服务器数据不同步造成的,这时可以通过以下几步来处理:
  1. 在从服务器上使用命令stop slave停止从服务器。
  2. 在主服务器上使用命令flush logs 刷新主服务器日志信息。
  3. 在主服务器上使用命令show master status ;查看主服务器状态,主要关注日志文件名称和位置偏移量(position)。
  4. 在从服务器上执行命令change master to master_log_file='mysql-bin.00004',master_log_pos=397;注意文件名和position和主服务器上对应。
  5. 使用命令start slave;启动从服务器的slave线程。
再次在主服务器表中插入数据,就应该能够正常同步了。

貌似图片不能正常显示,有什么问题,加入郑州Java开发者QQ群52573267,大家一起讨论学习,欢迎目前在郑州或者将来打算回郑州的童鞋们加入!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值