阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

在CentOS上配置MySQL主从复制(Master-Slave)

374次阅读
没有评论

共计 2989 个字符,预计需要花费 8 分钟才能阅读完成。

前面一篇介绍了免编译版的 MySQL 的安装,确实很方便,现在再来看看如何配置 MySQL 主从复制。数据库的安装请参考如何在 CentOS6.5 系统上安装免编译版的 MySQL,我这里假设你已经分别在两台机器上安装好了 MySQL 数据库,都先不启动。

先在 Master 上操作

# 编辑 my.cmf 文件,在 [mysqld] 以下添加两行内容

vi /etc/my.cnf
 
[mysqld]
innodb_flush_log_at_trx_commit=2 
sync_binlog=1
 
# 然后修改以下内容,一般是在 mysql-bin 后面加上 IP 最后三位数,个人习惯
log-bin=mysql-bin  改成  log-bin=mysql-bin-60
 
#server-id 不变
server-id=1
关于 innodb_flush_log_at_trx_commit
抱怨 Innodb 比 MyISAM 慢 100 倍?那么你大概是忘了调整这个值。默认值 1 的意思是每一次事务提交或事务外的指令都需要把日志写入(flush)硬盘,这是很费时的。特别是使用电 池供电缓存(Battery backed up cache)时。设成 2 对于很多运用,特别是从 MyISAM 表转过来的是可以的,它的意思是不写入硬盘而是写入系统缓存。日志仍然会每秒 flush 到硬 盘,所以你一般不会丢失超过 1 - 2 秒的更新。设成 0 会更快一点,但安全方面比较差,即使 MySQL 挂了也可能会丢失事务的数据。而值 2 只会在整个操作系统 挂了时才可能丢数据。

关于 sync_binlog
sync_binlog:这个参数是对于 MySQL 系统来说是至关重要的,他不仅影响到 Binlog 对 MySQL 所带来的性能损耗,而且还影响到 MySQL 中数据的完整性。对于“sync_binlog”参数的各种设置的说明如下:
sync_binlog=0,当事务提交之后,MySQL 不做 fsync 之类的磁盘同步指令刷新 binlog_cache 中的信息到磁盘,而让 Filesystem 自行决定什么时候来做同步,或者 cache 满了之后才同步到磁盘。
sync_binlog=n,当每进行 n 次事务提交之后,MySQL 将进行一次 fsync 之类的磁盘同步指令来将 binlog_cache 中的数据强制写入磁盘。

在 MySQL 中系统默认的设置是 sync_binlog=0,也就是不做任何强制性的磁盘刷新指令,这时候的性能是最好的,但是风险也是最大的。因为一旦系统 Crash,在 binlog_cache 中的所有 binlog 信息都会被丢失。而当设置为“1”的时候,是 最安全但是性能损耗最大的设置。因为当设置为 1 的时候,即使系统 Crash,也最多丢失 binlog_cache 中未完成的一个事务,对实际数据没有任何实质性影响。从以往经验和相关测试来看,对于高并发事务的系统来说,“sync_binlog”设置为 0 和设置为 1 的系统写入性能差距可能高达 5 倍甚至更多。

# 启动主数据库服务
service mysqld start
 
# 登录数据库
mysql -uroot - p 密码
 
# 授权给从数据库服务器 192.168.1.61,用户名 repl,密码 123456,请根据自己实际情况修改,这里只做演示
mysql > GRANT REPLICATION SLAVE ON *.* to ‘repl’@’192.168.1.61′ identified by’123456’;
 
mysql > show master status;
记录下 File 及 Position 的值,在后面进行从服务器配置的时候需要用到
现在切换到从(Slave)上操作

vi /etc/my.cnf
 
# 在 [mysqld] 以下添加两行内容
[mysqld]
innodb_flush_log_at_trx_commit=2
sync_binlog=1
 
# 然后修改以下内容,一般是在 mysql-bin 后面加上 IP 最后三位数,个人习惯
log-bin=mysql-bin 改成 log-bin=mysql-bin-61
 
#ID 值必须唯一
server-id= 1 修改为 server-id=2
 
# 启动从数据库服务
service mysqld start
 
# 登录数据库
mysql -uroot - p 密码
 
# 执行以下语句
mysql> change master to
master_host=’192.168.1.60′,
master_user=’repl’,
master_password=’123456′,
master_log_file=’File 的内容 ’,
master_log_pos=Position 的内容;
 
# 如果没有报错,就启动 Slave 同步进程
mysql> start slave;
 
# 主从同步检查
mysql> show slave status\G
 
==============================================
Slave_IO_State:
Master_Host:192.168.1.60
Master_User: repl
Master_Port:3306
……
Slave_IO_Running: YES
Slave_SQL_Running: YES
以下内容省略 ……
==============================================
 
一定要确保其中 Slave_IO_Running 与 Slave_SQL_Running 的值为 YES,主从配置才是成功的。
搞定,收工。

PS:这是在数据库刚装好的时候就配置的主从配置,没有任何数据,那么如果是已经有一台数据库服务器,要加一台从数据库服务器要怎么配置?这个还需研究。

Linux 环境下 MySQL5.6 Master-Slave 配置实战  http://www.linuxidc.com/Linux/2016-04/130332.htm

Linux 下 MySQL 主从复制(Master-Slave)与读写分离(Amoeba)实践 http://www.linuxidc.com/Linux/2016-05/130905.htm

生产环境 MySQL 主主同步主键冲突处理 http://www.linuxidc.com/Linux/2013-07/86890.htm

MySQL 主从失败 错误 Got fatal error 1236 http://www.linuxidc.com/Linux/2012-02/54729.htm

MySQL 主从复制,单台服务器上实施 http://www.linuxidc.com/Linux/2013-03/81913.htm

搭建 MySQL 代理服务器实现读写分离 + 主从同步 http://www.linuxidc.com/Linux/2014-05/102265.htm

MySQL 5.5 主从双向同步 http://www.linuxidc.com/Linux/2012-12/75973.htm

MySQL 5.5 主从同步排错 http://www.linuxidc.com/Linux/2014-08/105416.htm

MySQL 主从复制异步半同步实例 http://www.linuxidc.com/Linux/2014-10/107608.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-06/132266.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2989字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7805348
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛 NAS 硬件 02:某鱼 6 张左右就可拿下 5 盘位的飞牛圣体 NAS 前言 大家好,我是星...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你 为什么要用宝塔跑分? 宝塔跑分其实就是对 CPU、内存、磁盘、IO 做...
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...