关于Mysql搭建主从复制功能的步骤实现

 更新时间:2023年05月22日 10:26:05   作者:狮子也疯狂  
这篇文章主要介绍了关于Mysql搭建主从复制功能的步骤实现,在实际的生产中,为了解决Mysql的单点故障已经提高MySQL的整体服务性能,一般都会采用主从复制,需要的朋友可以参考下

1.描述

在实际的生产中,为了解决Mysql的单点故障已经提高MySQL的整体服务性能,一般都会采用「主从复制」。

比如:在复杂的业务系统中,有一句sql执行后导致锁表,并且这条sql的的执行时间有比较长,那么此sql执行的期间导致服务不可用,这样就会严重影响用户的体验度。

主从复制中分为「主服务器(master)「和」从服务器(slave)」,「主服务器负责写,而从服务器负责读」,Mysql的主从复制的过程是一个「异步的过程」。

这样读写分离的过程能够是整体的服务性能提高,即使写操作时间比较长,也不影响读操作的进行。

这里的描述用一张图来表示:

2.开始远程连接

#切换到mysql这个数据库,修改user表中的host,使其可以实现远程连接
use mysql;
update user set host ="%" where user ="root";
#改完之后一定要刷新信息
 flush privileges;

3.开启bin-log日志

#修改主服务器Master
#修改配置文件
vim /etc/my.cnf
#主服务器唯一ID,这个id可以随便修改,只要不跟从服务器重复
server-id=1
#启用二进制日志
log-bin=mysql-bin
#修改从服务器slave
修改配置文件:vim /etc/my.cnf
#从服务器唯一ID
server-id=2
#启用中继日志
relay-log=mysql-relay

4.重启两台mysql

service mysqld restart

5.授权Ⅰ

在主服务器上建立帐户并授权slave

mysql>GRANT REPLICATION SLAVE ON *.* to 'slave'@'%' identified by '123456';

授权Ⅱ

在master上创建账户并授权slave

mysql>GRANT REPLICATION SLAVE ON *.* to 'slave'@'%' identified by '123456';

tips
一般不用root帐号,“%”表示所有客户端都可能连,只要帐号,
密码正确,此处可用具体客户端IP代替,如192.168.145.226,
加强安全。

6.配置从服务器

mysql>change master to master_host='192.168.66.138',master_user='slave',master_password='123456',
master_log_file='mysql-bin.000001',master_log_pos=438;

7.启动从库的复制功能

mysql>start slave;

8.检查从库复制功能状态

show slave status \G;
TIPS
下图所圈的两个线程必须为yes状态,否则主从复制搭建不成功。

到此这篇关于关于Mysql搭建主从复制功能的步骤实现的文章就介绍到这了,更多相关Mysql搭建主从复制功能内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 理解Mysql prepare预处理语句

    理解Mysql prepare预处理语句

    这篇文章主要帮助大家学习理解Mysql prepare预处理语句,对prepare预处理语句感兴趣的小伙伴们可以参考一下
    2016-03-03
  • mysql分组后如何获取每个组的第一条数据

    mysql分组后如何获取每个组的第一条数据

    这篇文章主要介绍了mysql分组后如何获取每个组的第一条数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 在MySQL数据库之间实现数据同步的配置步骤

    在MySQL数据库之间实现数据同步的配置步骤

    本文介绍了六种常见的MySQL数据同步方法,包括主从复制、双主复制、群集复制、使用第三方工具(如PerconaXtraBackup)和使用MySQLWorkbench进行数据同步,以及编写自定义脚本进行数据同步,每种方法都有其优缺点,需根据实际需求选择,感兴趣的朋友一起看看吧
    2025-02-02
  • MySQL覆盖索引和索引跳跃扫描方式

    MySQL覆盖索引和索引跳跃扫描方式

    这篇文章主要介绍了MySQL覆盖索引和索引跳跃扫描方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-05-05
  • MySQL 更新字段的值为当前最大值加1的解决方案

    MySQL 更新字段的值为当前最大值加1的解决方案

    本文介绍MySQL中通过UPDATE/INSERT结合SELECT语句,将字段值更新为当前最大值加1的方法,涵盖嵌套子查询与自定义变量方案,后者更高效适用于批量操作,感兴趣的朋友跟随小编一起看看吧
    2025-07-07
  • MySQL进行JSON查询的详细教程

    MySQL进行JSON查询的详细教程

    在MySQL中,一般会使用特定的 JSON 路径表达式语法来导航和提取 JSON 文档中的数据,本文将为大家详细介绍一下具体的查询方法,希望对大家有所帮助
    2025-03-03
  • MySQL的查询计划中ken_len的值计算方法

    MySQL的查询计划中ken_len的值计算方法

    本文首先介绍了MySQL的查询计划中ken_len的含义;然后介绍了key_len的计算方法;最后通过一个伪造的例子,来说明如何通过key_len来查看联合索引有多少列被使用
    2017-02-02
  • 获取 MySQL innodb B+tree 的高度的方法

    获取 MySQL innodb B+tree 的高度的方法

    这篇文章主要介绍了获取 MySQL innodb 的 B+tree 的高度的示例,帮助大家更好的理解和使用MySQL数据库,感兴趣的朋友可以了解下
    2020-10-10
  • MySQL 驱动中虚引用 GC 耗时优化与源码分析

    MySQL 驱动中虚引用 GC 耗时优化与源码分析

    这篇文章主要为大家介绍了MySQL 驱动中虚引用 GC 耗时优化与源码分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • ERROR 1222 (21000): The used SELECT statements have a different number of columns

    ERROR 1222 (21000): The used SELECT statements have a differ

    mysql 提示SQL-ERROR summary different number of columns
    2011-07-07

最新评论