【原创】Mysql的主从配置,实现读写分离


    在一些中大型项目中,由于高并发、高访问,数据库往往是提升服务器性能的瓶颈,而优化数据库的方法有很多,今天重点研究的是mysql数据库的读写分离,可以实现master服务器只负责写操作(insert、update、delete)而slave服务器只负责读(query)操作;

    mysql的读写分离需要依靠mysql数据库本身的主从配置即mysql的复制来实现。下面开始正式的配置

    一、准备两台服务器,我实在本地进行的测试;

        master服务器:

        操作系统:windows10 64位专业版  

        mysql版本:v 5.7.13

        ip:192.168.16.11

        

        slave服务器:

        操作系统:windows7 

        ip: 192.168.16.159

        mysql版本:v 5.7.20


    二、配置master服务器

    ①配置一个可以外部访问的mysql账户

    ②然后my.ini加入以下配置

    在[mysqld]下面增加下面几行代码

    server-id=112   
    #给数据库服务的唯一标识,一般为大家设置服务器Ip的末尾号
    log-bin=master-bin
    log-bin-index=master-bin.index

    查看日志

        mysql> SHOW MASTER STATUS;

    +-------------------+----------+--------------+------------------+

    | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

    +-------------------+----------+--------------+------------------+

    | master-bin.000001 | 1285 | | |

    +-------------------+----------+--------------+------------------+

    1 row in set (0.00 sec)

    重启MySQL服务

    三、配置slave服务器

     找到MySQL安装文件夹修改my.ini文件,在[mysqld]下面增加下面几行代码

    [mysqld]
  server-id=159
  relay-log-index=slave-relay-bin.index
  relay-log=slave-relay-bin

    重启MySQL服务

    四、slave服务器连接master服务器

          mysql控制台输入以下命令进行连接

        change master to master_host='192.168.0.104', //Master 服务器Ip
	master_port=3306,
	master_user='repl',
	master_password='mysql', 
	master_log_file='master-bin.000001',//Master服务器产生的日志
	master_log_pos=0;

    五、启动slave

        start slave;

    至此,mysql的主从配置已经完成,测试一下,在master服务器下执行数据库的插入、删除、更新,slave是否会同步master服务器的操作。

    注意:①配置成功的关键是slave服务器所监控的log_file要与master服务器产生的一样,即show master status显示出来的文件与slave连接master服务器的log_file一致。如果不一致可以在slave服务器change master。②master服务器重启或者mysql服务重启后log_file会发生变化,如果slave服务器没有随master重启会出现无法监控master服务器log文件的问题,此时需要change master或者重启slave服务器的mysql 服务;
    

课程连接:https://ke.qq.com/course/255238

上一篇

评论



分享

热门文章

最新加入

最新评论

洞天水月: 只需要在ajax的访问页面加上授权就可以啦 查看原文 11月24日 10:53
Tank_O_oO/: 能否发一份源码,学习一下吗?22103507@qq.com,谢谢~ 查看原文 08月22日 10:33
1158314467_qq_com: 66666啊 查看原文 05月08日 10:59
admin: 很不错 查看原文 05月04日 17:45
admin: 很不错,谢谢分享!!!! 查看原文 05月04日 17:43