使用mysql主从复制的好处有:
1、采用主从服务器这种架构,稳定性得以提升。如果主服务器发生故障,我们可以使用从服务器来提供服务。
2、在主从服务器上分开处理用户的请求,可以提升数据处理效率。
3、将主服务器上的数据复制到从服务器上,保护数据免受意外的损失。
环境描述:
新企业要搭建架构为主从复制的mysql数据库。
主服务器(mysql-master):IP地址:192.168.48.128,mysql已安装,没有用户数据。
从服务器(mysql-slave):IP地址:192.168.48.130,mysql已安装,没有用户数据。
主从服务器均可正常提供服务。
主从复制配置如下:
在主服务器上操作:
1)、确保/etc/my.cnf中有如下参数,没有的话需手工添加,并重启mysql服务。
[mysqld]
log-bin=mysql-bin 启动二进制文件
server-id=1 服务器ID
2)、登录mysql,在mysql中添加一个backup的账号,并授权给从服务器。
[root@localhost ~]# mysql -uroot –p123456 登录mysql
mysql>grant replication slave on *.* to 'backup'@'192.168.48.130' identified by 'backup'创建backup用户,并授权给192.168.48.130使用。
3)、查询主数据库状态,并记下FILE及Position的值,这个在后面配置从服务器的时候要用到。
MySQL主备binlog文件的下标是一个用来标识binlog文件的唯一标识符,它由四部分构成:文件编号、事务编号、时间戳和事件类型。这四部分共同来定义binlog文件中每条语句的位置和动作。主机的mysql重启,但是你的从机mysql肯定是没重启才出现binlog索引不一致的现象,我认为是,从机mysql在主机重启之前slave_io_running线程始终保持和主机通信,传输binlog的更新。当主机挂掉之后,slave_io_running一直等待,状态变成NO,整个复制就会停掉,应该说是处于sleep状态,后来主机恢复,从机是没法辨别的,只能stopslave然后再start,或者changemaster操作下,实在不行,只能重启从机的mysql了欢迎分享,转载请注明来源:夏雨云
评论列表(0条)