这篇文章给大家介绍怎样用两台服务器实现数据库的主从同步与分离,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
使用背景:在网联网不断发展的时代,人们对数据的使用也不断的增加,对于用户的请求不断的增加,数据库的读写操作就特别大,就会导致服务器受不了那么多用户的请求和对数据的操作,导致服务器负荷,相应的用户的等待时间就会特别长,给用户的体验特别差,而主从同步就很好的解决的这种并发的问题。
主从同步:简单来说就是使用两台服务器,分别处理用户的读和写的操作,从而实现了读写分离。由于从服务器同步的主服务器上的数据,所以主从同步极大的保证了数据的安全。
基本原理:主从同步,分为两台服务器
如图:主为主服务器,奴隶为从服务器
1。主服务器(主)对数据的操作,对事务更新完成之前,mysql将以串行的形式将日志以2进制的形式写入到二进制日志日志中(即二进制日志事件),在事务写完以后,主通知存储引擎,提交事务。
2。提交事务后,奴隶服务器,将主人的二进制日志日志拷贝到自己的中继日志中(即奴隶开启I/O的线程读主中取的二进制日志,然后写入到奴隶中的中继日志中)
3。索尔螺纹线程将中继日志中的日志读取,重做数据,达到将主中的数据改变同步到奴隶中。
所以:两台服务器,主提供给用户写(增,删,该)的操作,奴隶供公户读(查询)的操作,从而大大的减轻了服务器的负荷,解决了高并发的问题。
那么接下来让我们看看如何使用两台服务器搭建mysql的主从同步吧(ps:今天只介绍如何在服务器上搭建主从同步的实现)。
在开始之前,需要两台服务器,安装好linux系统,并且安装好mysql 5.1以上的版本。(* * *安装有vim编辑器)。
那么这些环境准备好了,就开始搭建吧!
1。使用SSH连接你的两台服务器(这里我用的两台为主人和奴隶的服务器)
2。修改主和从上的mysql的配置文件
, a。修改主服务器(主)的配置文件
输入命令:vim/etc/my.cnf, (mysql的默认安装位置)
会出现以下提示:
选择e,进行编辑。
按我键
在mysqld下添加以下配置:
服务器id=1,,,, log-bin=master-bin ,, log-bin-index=master-bin。指数
如图(看图上具体细节),wq保存并退出,这里主服务器(主)的配置就好了。
然后重载mysql配置
输入:服务mysqld重启
接下来我们看看是否成功配置
在掌握中登录mysql
命令:mysql -uroot - p
输入密码后进入mysql界面,输入显示主人的地位,如图:
b。修改从服务器的配置(奴隶)
连接奴隶服务器,vim打开mysql的配置文件
原理一样,在mysqld添加下配置
服务器id=2,, relay-log=slave-relay-bin relay-log-index=slave-relay-bin。指数
如图:
保存退出
然后重启mysql,这里介绍另一种重启mysql的方法
输入命令:/etc/init。d/mysql停止停止
/etc/init。d/mysql开始,启动
登录mysql验证配置是否有误
说明,配置没啥问题。
<强> 3。开始主从连接,强>
。在主服务器中添加从服务器连接所用到的用户
在掌握中创建用户mengxin (ps:这是笔者用的名字)
创建用户mengxin
再授予mengxin主从访问权限