大型网站为了缓解大量的并发访问,要网站实现分布式负载均衡。但是数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢失的话,后果不堪设想。这时候我们会考虑如何减少数据库的连接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached,如果资金丰厚的话,必然会想到服务器群来分担主数据库的压力。利用MySQL主从配置,实现读写分离,减轻数据库压力。这种方式,在如今很多网站里都有使用,也不是新鲜事情,今天配置了一下,写出来方便大家学习参考。

环境描述:

一台master服务器(VM中的ubuntu14.04系统)

一台slave服务器(win7系统)

具体实现:

安装mysql

在主从服务器上安装mysql,操作比较简单,这里就不再赘述。

配置Master主服务器

(1)在Master服务器上创建一个用户‘an’,并允许其它Slave服务器通过远程访问Master,通过用户读取二进制日志,实现数据同步。

mysql>create user an;//创建新用户

//an用户必须拥有REPLICATION SLAVE权限,密码为mysql。这里的%是通配符,表示192.168.20.0-192.168.20.255的server都可以用an登录主服务器。如果不想适配这么多IP,可以固定IP。

mysql>GRANT REPLICATION SLAVE ON *.* TO 'an'@'192.168.20.%' IDENTIFIED BY 'mysql';

(2)找到mysql安装文件夹/etc/mysql/my.cnf修改my.cnf

在[mysqld]下增加下面代码

server-id=1 //数据库服务的唯一标识,推荐设置服务器Ip尾号

log-bin=master-bin //二进制日志

log-bin-index=master-bin.index

*查看配置文件中bind-address=127.0.0.1是否被注释,如果没有注释,必须注释掉,否则从数据库连接不到主数据库。

(3)查看日志

mysql>show master status;

记住这个日志文件和Position,配置从数据库有用。

(4)重启mysql服务

sudo service mysql restart

3.配置Slave从服务器(windows)

(1)找到mysql配置文件my.ini(我的my.ini居然没在安装文件夹,在X:\ProgramData\MySQL\MySQL Server 5.7下,找不到的同志可以去这个路径下看看),在[mysqld]下增加下面代码:

server-id=2

relay-log-index=slave-relay-bin.index

relay-log=slave-relay-bin

(2)重启mysql服务

(3)连接Master服务器

//192.168.20.136是Master 服务器Ip

mysql>change master to master_host='192.168.20.136',

master_port=3306,

master_user='an',

master_password='mysql',

master_log_file='mysql-bin.000013',//Master服务器产生的日志,填入上面show master status显示的东东

master_log_pos=107;

(4)启动Slave

mysql>start slave;

(5)查看成功与否

//在slave从数据库中输入下面指令查看状态

mysql>show slave status\G;

如果红框处都一样的话,恭喜配置成功。

至此所有配置都完成了。可以在Master中新建数据库,表,插入数据,在Slave数据库中看看有没有该数据。

mysql主从配置对解决并发有用_MySQL主从配置,读写分离相关推荐

  1. mysql读写分离_Mysql数据库09MySQL读写分离

    Mysql数据库09-MySQL读写分离 一.读写分离应用案例分析 在企业用户中,在大量的数据请求下,单台数据库将无法承担所有读写操作.解决方法:配置多台数据库服务器以实现主从复制+读写分离. 二.读 ...

  2. mysql主从与读写分离_MySQL主从复制与读写分离

    MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中, ...

  3. mysql双机热备 读写分离_MySQL——主从复制与读写分离

    什么是主从复制 主从复制是用来建立一个和主数据库完全一样的数据库环境,称为从数据库:主数据库一般是准实时的业务数据库. 主从复制的作用 1.做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到 ...

  4. mysql读写分离和分布式_MySQL主从复制与读写分离

    MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中, ...

  5. mysql读写分离的含义_MySQL 主从复制与读写分离概念及架构分析

    1.MySQL主从复制入门 首先,我们看一个图: 影响MySQL-A数据库的操作,在数据库执行后,都会写入本地的日志系统A中. 假设,实时的将变化了的日志系统中的数据库事件操作,在MYSQL-A的33 ...

  6. 《MySQL——如何解决一主多从的读写分离的过期读问题》

    目录 两种架构 两种架构特点 强制走主库方案 Sleep方案 判断主备无延迟方案 配合semi-sync 等主库位点方案 GTID方案 两种架构 基于一主多从的读写分离,如何处理主备延迟导致的读写分离 ...

  7. mysql driver 读写分离_Mysql主从复制和读写分离实践

    1.主从复制 原理 MySQL之间数据复制的基础是二进制日志文件(binary log file).一台MySQL数据库一旦启用二 进制日志后,其作为master,它的数据库中所有操作都会以" ...

  8. mysql读写分离中间件都有哪些_MySQL cetus 中间件 读写分离

    首先需要确保mysql 的主从同步成功. CentOS 系统可以通过以下命令安装依赖包: yum install cmake gcc glib2-devel flex mysql-devel gper ...

  9. mysql读写分离_MySQL基于amoeba读写分离实验

    =========================================== 主从复制只是一个同步数据的方式 读写分离:只在主的上面写,只在从的上面读 读写分离方案:[1]基于程序代码内部 ...

最新文章

  1. 基于局域网的扩展认证协议EAPOL Extensible Authentication Protocol
  2. 【EventBus】EventBus 源码解析 ( 注册订阅者 | 注册订阅方法详细过程 )
  3. vim 插件_vim插件YouCompleteMe配置
  4. 怎么查看python是32位还是64位的
  5. NFS还是iSCSI?关于VMware vSphere的存储连接的选择题
  6. py获取前端的参数_鹅厂技术说 | 深入理解前端性能监控
  7. pymysql.err.OperationalError: 1136, Column count doesn t match value count at row 1
  8. 模仿人人网客户端应用源码
  9. 融合不是冗余,全栈自研才有出路?特斯拉/Mobileye这样做
  10. 兄弟j220怎么清零_BROTHER 兄弟一体机 复位清除计数器
  11. 那个只能在win7的扫雷游戏,你能通关吗?今天用Python教大家,上号!!!
  12. 项目管理工具——Jira使用和配置
  13. 移动机器人系列4——移动机器人动力学
  14. jclasslib插件_在IDEA利用断点debug+解析class文件+jclasslib插件
  15. Thermal_Config_Tool_exe_v1使用
  16. Linux中删除文件夹和文件的命令(☆)
  17. 游戏辅助脚本(python)
  18. 未明学院:Tableau安装详细教程,带你攻克第一个学习难关!
  19. 初 级 测 井 工 题 库 三哥》
  20. CDS View-Part8Part9Part10Part16 内置函数

热门文章

  1. 【转载】徐国洪:好耶向移动广告技术产品转型
  2. 银行软件测试工作量分析和评估方法(转)
  3. 由〈非你莫属〉想到与客户的沟通
  4. 3.Event Delegate
  5. DELPHI存储过程调用
  6. css样式的百分比都相对于谁?
  7. nodejs服务器部署教程一
  8. NIO 02 (转)
  9. Entity Framework 关系约束配置
  10. 带缺省参数的重复声明