Mysql 主从复制

mysql主要用于减轻单台数据库服务器的并发限制,也有数据备份的作用。主从分离以后也可以减少写入数据库行锁对查询效率的影像。主要的操作方式是通过mysql自带的二进制日志文件进行实现。需要准备主从两台mysql数据库。

  1. 在主库中修改mysql数据库的配置文件 /etc/my.cnf 中添加
    [mysqld]
    log-bin=mysql-bin # 启用二进制日志
    server-id=100 # 服务器为一id
    
    
    # 保存以后
    systemctl restart mysqld # 重启mysql  
  2. 登录主库添加从库访问用户并设置密码
    # 这个需要登录到mysql 执行 因为是一条sql
    CREAT REPLICATION SLAVE ON *.* to xiaoming'@'%'identified by 'Root@123456';

      #创建一个用户xiaoming,密码Root@123456,并且xiaoming用户授权REPLICATION SLAE 权限,常用于建立复制时所需要用户的用户权限,也就是slave必须被master授权具有该权限的用户,才能通过该用户复制
      show master status; # 记录下结果中File和Position的值 (执行完此sql后不要再执行任何操作)

     

  3. 仓库配置修改mysql数据库配置文件 /etc/my.cnf 
    [mysqld]
    server-id=101 # 服务器唯一ID
    # 保存以后
    systemctl restart mysqld # 重启mysql  

    # 登录从库执行sql语句
    change master to master_host='主库地址:端口',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000001(主库通过show语句显示的文件名)',master_log_pos=439(主库通过手语句显示节点);

    # 如果运行提示已经有io进城在执行了 需要运行 stop slave 停止
    stop slave

    # 然后运行
    start slave

    # 检查从库状态
    show slave status;

    然后就可以通过各种数据库框架进行配置读写分离的操作了

posted on 2022-05-07 16:34  殿堂级退堂鼓艺术家  阅读(27)  评论(0编辑  收藏  举报

导航