我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql5.6安装及主从半同步配置

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql5.6安装及主从半同步配置

1.安装mysql5.6

rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server -y
rpm -qa|grep mysql
mysql-community-libs-5.6.40-2.el7.x86_64
mysql-community-server-5.6.40-2.el7.x86_64
mysql-community-release-el7-5.noarch
mysql-community-client-5.6.40-2.el7.x86_64
mysql-community-common-5.6.40-2.el7.x86_64
#到此安装成功
systemctl start mysqld
systemctl enable mysqld
mysql_secure_installation #进行一些安全配置,根据选项选择

2. 主从同步配置

添加my.cnf配置参数
#在主库my.cnf [mysqld]中加入
log-bin = mysql-bin
server-id = 1
#从库
log-bin = mysql-bin
server-id = 2
在主库添加复制账号
grant replication slave on *.* to rep@'192.168.0.%' identified by '123456';
同步主库到从库
(1) 锁表法(锁表的时候不能退出,退出就失效了)
flush table with read lock;       #锁表
mysql> show master status;             #锁表记录的位置点
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000002 |      253 |              |                  |
+------------------+----------+--------------+------------------+
mysqldump -uroot -p123456 --events -A -B |gzip >/opt/bak_$(date +%F).sql.gz  #比较土的办法加-F 切割binlog可能不对
接着show master status; 如果发现位置一样,则锁表生效,如果不一样说明锁表失败,从库也会文件不同步
unlock tables;    解锁表
(2) 不锁表方法
mysqldump -uroot -p123456 -A -B -F --master-data=2 -x --events|gzip >/opt/all.sql.gz   
show master status; 查看记录的位置点
还原从库
gzip -d bak_xxx.sql.gz    #解压备份的文件
mysql -uroot -p123456  <bak_xxx.sql
配置从库
mysql -uroot -p123456 -S /data/3307/mysql.sock<< EOF
CHANGE MASTER TO  
MASTER_HOST='10.0.0.52', 
MASTER_PORT=3306,
MASTER_USER='rep', 
MASTER_PASSWORD='123456', 
MASTER_LOG_FILE='mysql-bin.000002',
MASTER_LOG_POS=253; 
EOF

start slave;   #开始同步在从库使用 
show slave status\G   出现如下信息成功
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
       Seconds_Behind_Master: 0   #这个是从库落后主库的秒数 不是很准

3. 半同步复制配置

3.1 安装插件
#这是半同步所需的插件
ll -h /usr/lib64/mysql/plugin/semisync_*
-rwxr-xr-x. 1 root root 509K Feb 26 21:27 /usr/lib64/mysql/plugin/semisync_master.so
-rwxr-xr-x. 1 root root 273K Feb 26 21:27 /usr/lib64/mysql/plugin/semisync_slave.so
#主库加载插件
mysql> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
mysql> set global rpl_semi_sync_master_enabled=on;
#从库加载插件
mysql>  INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
mysql> set global rpl_semi_sync_slave_enabled=on;
3.2 加入my.cnf参数
#主库[mysqld]加入下面参数
rpl_semi_sync_master_enabled = 1  
#从库[mysqld]加入下面参数
rpl_semi_sync_slave_enabled = 1  

mysql5.6安装及主从半同步配置
查看参数

show variables like '%Rpl%';
3.3 验证
show global status like 'rpl_semi%';
+--------------------------------------------+-------+
| Variable_name                              | Value |
+--------------------------------------------+-------+
| Rpl_semi_sync_master_clients               | 1     |
| Rpl_semi_sync_master_net_avg_wait_time     | 0     |
| Rpl_semi_sync_master_net_wait_time         | 0     |
| Rpl_semi_sync_master_net_waits             | 0     |
| Rpl_semi_sync_master_no_times              | 0     |
| Rpl_semi_sync_master_no_tx                 | 0     |
| Rpl_semi_sync_master_status                | ON    |
| Rpl_semi_sync_master_timefunc_failures     | 0     |
| Rpl_semi_sync_master_tx_avg_wait_time      | 0     |
| Rpl_semi_sync_master_tx_wait_time          | 0     |
| Rpl_semi_sync_master_tx_waits              | 0     |
| Rpl_semi_sync_master_wait_pos_backtraverse | 0     |
| Rpl_semi_sync_master_wait_sessions         | 0     |
| Rpl_semi_sync_master_yes_tx                | 0     |
+--------------------------------------------+-------+

mysql5.6安装及主从半同步配置

mysql> show global status like 'rpl_semi%';   
+----------------------------+-------+
| Variable_name              | Value |
+----------------------------+-------+
| Rpl_semi_sync_slave_status | ON    |
+----------------------------+-------+

mysql5.6安装及主从半同步配置

4 测试

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql5.6安装及主从半同步配置

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql 5.7.25 解压版安装-主从同步配置

#锁定主数据库flush tables with read lock#验证结果INSERT INTO `kettle`.`user_copy` (`id`, `name`, `telphone`) VALUES ("4", "4", "4");# [SQL]I
mysql 5.7.25 解压版安装-主从同步配置
2019-09-14

redis主从同步配置

这篇文章给大家介绍redis主从同步配置,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一丶主从概念 一个master可以拥有多个slave,一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架
2023-06-06

MySQL5.7多主一从同步配置

这篇文章主要讲解了“MySQL5.7多主一从同步配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL5.7多主一从同步配置”吧!部署环境 注:使用docker部署mysql实例
2023-06-19

本地windows安装两个mysql服务器,配置主从同步

目录一、配置两个mysql服务器1.首先安装mysql2.复制安装后的目录3.安装服务4. 开启服务5. 停止服务二、设置主从配置:大型网站为了缓解大量的并发访问,除了在网站实现分布式负载均衡,还会搭建服务器mysql集群技术,来分担主数据
2022-12-14

编程热搜

目录