天天看点

MySQL主从同步读写分离的集群配置

大型网站为了解决大量的高并发访问问题,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器支持,如此多的数据库连接操作,服务器性能再好数据库必然会崩溃。数据丢失的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached等。如果资金充足的话,必然会想到假设服务器集群,来分担主数据库的压力。或者在硬件设备上,投入大量资金,购买高性能的服务器。出名的有f5,硬件负载,软件负载等。

ok切入今天的主题,利用mysql主从配置,实现读写分离,减轻数据库压力。这种方式,在如今很多网站里都有使用,也不是什么新鲜事情,今天总结一下,方便大家学习参考一下。

读写分离:

1.多个服务器肯定比一个服务器好。

2.在数据库写入的时候,会加入大量的锁(排它锁,共享锁等等),从而影响性能。

3.数据更安全,多数据库存在备份数据。

搭建环境:

1.搭设一台master服务器(win7系统64bit,ip:10.10.2.33)

2.一台台slave服务器(winxp系统32bit,ip:10.10.2.157)

原理:主服务器(master)负责网站写操作,从服务器负责查询操作。主从服务器利用mysql的二进制日志文件,实现数据同步。二进制日志由主服务器产生,从服务器响应获取同步数据库。

在主服务器上找到my.ini文件(版本不同可能文件名字不同,如:my.cnf)。

mysql中有好几种日志方式,我们只要启动二进制日志log-bin就ok。在[mysqld]下面增加下面几行代码

在从的服务器上也找到my.ini文件。在[mysqld]下面增加下面几行代码

欢迎大家关注我的博客!如有疑问,请加qq群:454796847共同学习!