Mysql主从复制注意事项的讲解

作者:zsx0728 时间:2024-01-28 10:57:32 

一、报错error connecting to master 'x@x.x.x.x:x' - retry-time: 60  retries: 86400

今天搭建mysql主从复制,一直报这个错。我是在一台虚拟机上使用多实例创建的2个不同端口的数据库,查了很久,才解决。

1.检查主从复制的用户名密码;

2.检查MASTER_LOG_FILE和MASTER_LOG_POS。

 记住配置从库的命令,这些参数都要参考主库的配置:


mysql> CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=3308, MASTER_USER='root', MASTER_PASSWORD='oldboy123', MASTER_LOG_FILE='mysql-bin.000007', MASTER_LOG_POS=797;

查询同步结果:


mysql> show slave status \G
*************************** 1. row ***************************
       Slave_IO_State: Waiting for master to send event
        Master_Host: 127.0.0.1
        Master_User: root
        Master_Port: 3308
       Connect_Retry: 60
      Master_Log_File: mysql-bin.000007
    Read_Master_Log_Pos: 797
       Relay_Log_File: mysql-relay-bin.000002
       Relay_Log_Pos: 253
   Relay_Master_Log_File: mysql-bin.000007
      Slave_IO_Running: Yes
     Slave_SQL_Running: Yes
      Replicate_Do_DB:
    Replicate_Ignore_DB:
     Replicate_Do_Table:
   Replicate_Ignore_Table:
  Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
         Last_Errno: 0
         Last_Error:
        Skip_Counter: 0
    Exec_Master_Log_Pos: 797
      Relay_Log_Space: 409
      Until_Condition: None
       Until_Log_File:
       Until_Log_Pos: 0
     Master_SSL_Allowed: No
     Master_SSL_CA_File:
     Master_SSL_CA_Path:
      Master_SSL_Cert:
     Master_SSL_Cipher:
       Master_SSL_Key:
   Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
       Last_IO_Errno: 0
       Last_IO_Error:
       Last_SQL_Errno: 0
       Last_SQL_Error:
Replicate_Ignore_Server_Ids:
      Master_Server_Id: 3308

同步结果看3项:Slave_IO_Running(I/O线程状态),Slave_SQL_Running(SQL线程状态),Seconds_Behind_Master(复制过程中从库比主库延迟的秒数)。

二、从库出现冲突无法复制。可以将同步指针向下移动一个,如果多次不同步,重复操作。


mysql> stop slave;
Query OK, 0 rows affected (0.02 sec)
mysql> set global sql_slave_skip_counter=1;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;
Query OK, 0 rows affected (0.01 sec)

三、当前从库还要作为其他从库的主库。在从库的my.cnf加入如下参数,并修改server_id和log-bin的配置(去掉注释,修改默认配置),重启服务。


log-slave-updates
log-bin = /data/3309/data/mysql-bin #根据实际情况写
expire_logs_days = 7 #相当于find /data/3309/data -type f -name "mysql-bin.000* -mtime +7 | xargs rm -f"

来源:https://blog.csdn.net/zsx0728/article/details/85251493

标签:mysql,主从复制,注意事项
0
投稿

猜你喜欢

  • Django日志和调试工具栏实现高效的应用程序调试和性能优化

    2022-10-25 10:58:01
  • MySQL数据库的23个注意事项

    2024-01-23 11:26:06
  • 让插入到 innerHTML 中的 javascript 跑起来

    2008-07-01 13:14:00
  • Python 列表(list)的常用方法

    2022-05-04 19:05:20
  • 在python中logger setlevel没有生效的解决

    2021-12-13 16:03:01
  • python logging日志模块原理及操作解析

    2022-10-30 02:44:31
  • PHP的HTTP客户端Guzzle简单使用方法分析

    2023-07-16 05:58:56
  • Pandas DataFrame操作数据增删查改

    2022-07-10 09:37:39
  • 深入Golang的接口interface

    2024-02-20 14:12:00
  • python实现下载指定网址所有图片的方法

    2021-05-17 22:12:16
  • Python defaultdict方法使用分析

    2023-01-02 18:05:35
  • ActiveMQ:使用Python访问ActiveMQ的方法

    2022-04-19 01:48:30
  • python web基础之加载静态文件实例

    2023-04-22 10:09:49
  • 获取SQL Server数据库元数据的几种方法

    2024-01-17 16:00:44
  • django 前端页面如何实现显示前N条数据

    2023-06-07 10:50:33
  • 5个CSS3技术实现设计增强

    2009-09-04 17:04:00
  • Python pyinotify日志监控系统处理日志的方法

    2023-12-11 08:57:37
  • Python协程的用法和例子详解

    2022-02-15 14:01:57
  • 前端html+css实现动态生日快乐代码

    2024-05-10 10:58:12
  • MySQL配置文件my.cnf中文版

    2011-09-30 11:06:15
  • asp之家 网络编程 m.aspxhome.com