MySql主从同步配置及实现-创新互联
mysql主从复制
随着技术的发展,在实际的生产环境中,由单台MySQL数据库服务器不能满足实际的需求。此时数据库集群就很好的解决了这个问题了。采用MySQL分布式集群,能够搭建一个高并发、负载均衡的集群服务器。在此之前我们必须要保证每台MySQL服务器里的数据同步。数据同步我们可以通过MySQL内部配置就可以轻松完成,主要有主从复制和主主复制。
创新互联建站-成都网站建设公司,专注成都网站建设、成都网站制作、网站营销推广,域名注册,网页空间,网站托管运营有关企业网站制作方案、改版、费用等问题,请联系创新互联建站。MySQL5.6开始主从复制有两种方式:基于日志(binlog);基于GTID(全局事务标示符)。此文章是基于日志方式的配置步骤。
主从复制原理图
环境说明
- master数据库IP:192.168.1.1
- slave数据库IP:192.168.1.2
- mysql版本:5.5.38
主从复制
1.在主从数据库配置文件,一般Linux中的MySQL配置文件都在/etc/my.cnf(windows中的配置文件为mysql.ini)。
这里以同步test库为例子,配置如下:
[mysqld]
#数据库ID号, 为1时表示为Master,其中master_id必须为1到232–1之间的一个正整数值,主从server-id不能一样;
server-id=1
#启用二进制日志;
log-bin=mysql-bin
sync-binlog=1
#需要同步的二进制数据库名;
binlog-do-db=test
保存文件,重启MYSQL。
2.构建主从复制,
第一步:在192.168.1.1(主)中创建一个192.168.1.2(从)可以登录的MySQL用户,这里以mysql119用户作为例子。
mysql>CREATE USER 'mysql119'@'@' IDENTIFIED BY '123456';
mysql>GRANT REPLICATION SLAVE ON *.* TO ‘mysql119’@’192.168.1.%’ IDENTIFIED BY ‘123456’;
mysql>FLUSH PRIVILEGES;
第二步:
查看192.168.1.1 主MySQL服务器二进制文件名与位置。
mysql>SHOW MASTER STATUS;第三步:告知从库二进制文件名与位置,在192.168.1.2中执行:
mysql>CHANGE MASTER TO
>MASTER_HOST=’192.168.95.11’,
>MASTER_USER=’mysql119’,
>MASTER_PASSWORD=’123456’,
>MASTER_LOG_FILE=’mysql-bin.000007’,
>MASTER_LOG_POS=525;
到这里就完成主从复制配置。
3.测试主重复制,在192.168.1.2中
mysql>SLAVE START; #开启复制
mysql>SHOW SLAVE STATUS\G #查看主从复制是否配置成功
如图:
当看到Slave_IO_Running: YES、Slave_SQL_Running: YES才表明状态正常。
实际测试:
- 查看 主test库的test_table,
- 然后往 主test库插入一条数据,
- 观察 从test库的数据,如图:
注意:
1.主重mysql版本最好保持一致,避免因版本差异出现不可预知的问题。
2.出现从数据库连接不上主数据库,查看是否授权问题。
3.在配置主从复制的时候,备份master数据前先锁表,保证数据一致性。
如有问题,欢迎指正!
参考文章:
https://www.cnblogs.com/phpstudy2015-6/p/6485819.html
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章题目:MySql主从同步配置及实现-创新互联
文章起源:http://myzitong.com/article/dghegp.html