mysql读写分离配置

mysql读写分离配置mysql读写分离配置随着网站访问和请求量的增加,单台数据库服务器的连接已耗尽,会出现连接请求还在等待,或是数据库服务器崩溃等现象,这时候我们考虑如何减少数据库的连接,可以通过优化代码、使用缓存、数据库读写分离等方式解决此问题。 什么是读写分离:将数据库的读、写操作分别作用到不同的数据库(不同物理机)上。 适用场景:读操作远大于写操作,包含大量复杂统计、离线计算等任务(比如定时按各维度对数…

大家好,又见面了,我是你们的朋友全栈君。

mysql读写分离配置

随着网站访问和请求量的增加,单台数据库服务器的连接已耗尽,会出现连接请求还在等待,或是数据库服务器崩溃等现象,这时候我们考虑如何减少数据库的连接,可以通过优化代码、使用缓存、数据库读写分离等方式解决此问题。 
什么是读写分离:将数据库的读、写操作分别作用到不同的数据库(不同物理机)上。 
适用场景:读操作远大于写操作,包含大量复杂统计、离线计算等任务(比如定时按各维度对数据进行统计分析,或者结算佣金等) 
研究了一阵,在配置的过程中出现各种问题。。今天刚配置好 
windows系统环境:本机+VM虚拟机:MySql5.6,先安装好MySql 
找到MySql5.6的 my.ini配置文件,在 C:\ProgramData\MySQL\MySQL Server 5.6目录中,ProgramData文件夹默认是隐藏的 
Mysql主从同步的现实: 
   1、Master库将变更记录到binlog中 
   2、Slave将master的binlog拷贝到它的relay log(中继日志)中 
   3、slave重做中继日志中的事件 
可以通过中间价实现读写分离,如Ameba,Corba,mysql-Proxy(官方)

实践

A:主库操作 
1、在my.ini文件的[mysqld]节中添加如下配置项: 
server-id=1 
log-bin=master-bin.log 
sync_binlog=1 
binlog-do-db=d #对数据库d记录日志,可以不配置此参数,我的未配置

2、使用root用户登录主库mysql,为同步操作创建一个用户,从库通过该用户同步主库数据 
3、对待同步用户授权:GRANT REPLICATION SLAVE ON . to ‘test’@’%’ identified by ‘test’; 
4、重启主库mysql服务,并再次登录后查看主库状态:show master status; 
这里写图片描述 
记住下面的 master-bin.000001 和 422 这是从库要同步的文件和同步的位置

B:从库操作 
1、登录虚拟机,在my.ini文件的[mysqld]节中添加如下配置项: 
server-id=2 
log-bin=myslave-bin.log 
sync_binlog=1

2、使用root用户登录从库mysql,修改从库的master信息 
change master to master_host=’192.168.1.109’,master_user=’test’,master_password=’test’,master_log_file=’mysql-bin.,000001’,master_log_pos=422;–注意日志编号

3、启动从库:start slave; 
4、查看从库状态:show slave status;下面红色框框里面的两个参数都是Yes,则说明主从配置成功!,之前很悲剧,Slave_IO_Running一直是No或者Connecting. 
这里写图片描述

至此配置完成。。。下面测试是否主库的修改会同步到从库。。。 
用上面创建的test用户登录主库,打开cmd命令,定位到mysql的安装目录的bin目录,cd C:\ProgramData\MySQL\MySQL Server 5.6 
这里写图片描述

登录从库,查看从库的test库是否新增了表t和数据 
这里写图片描述

再执行update命令试试 
这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133165.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于 Head First SQL 中文版

    关于 Head First SQL 中文版

    2021年12月1日
    36
  • java数组去重_JAVA数组去重常用方法

    java数组去重_JAVA数组去重常用方法packagecom.zxj.test;importjava.util.ArrayList;importjava.util.Arrays;importjava.util.HashMap;importjava.util.List;importjava.util.Map;publicclassTest{publicstaticvoidmain(String[]args){String…

    2022年6月23日
    42
  • c语言fread6,c语言中fread的用法「建议收藏」

    c语言fread6,c语言中fread的用法「建议收藏」fread是以记录为单位的i/o函数,fread和fwrite函数一般用于二进制文件的输入输出。下面小编就跟你们详细介绍下c语言中fread的用法,希望对你们有用。c语言中fread的用法如下:#includesize_tfwrite(constvoid*ptr,size_tsize,size_tnmemb,file*stream);返回值:读或写的记录数,成功时返回的记录数等…

    2022年9月3日
    2
  • Java多线程——基本概念「建议收藏」

    Java多线程——基本概念「建议收藏」线程和多线程程序:是一段静态的代码,是应用软件执行的蓝本进程:是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程线程:是比进程更小的执行单位。进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条线索,即每个线程也有它自身的产生、存在和消亡的过程,也是一个动态的概念主线程:(每个Java程序都有一个…

    2022年5月13日
    36
  • pycharm 2021.11激活码【2021最新】

    (pycharm 2021.11激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月29日
    56

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号