配置mysql replication出错记录

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

以下内容应用于[mysqld]段内


  1. server-id= 1  此行必须,1可以为其他数字,一般推荐的是IP最后段位。

  2. log-bin=mysql-bin 必须有此,开启binlog二进制所需。

  3. binlog-do-db=abc  可选,仅同步abc数据库,有,号隔开,可以同步多个数据库。binlog-do-db写错时会导致mysqld启动失败,提示找不到pid文件。

  4. binlog-ignore-db=abc     可选,同步除了abc以外的数据库。

  5. 同一机子配置两个mysqld时,在启动第二个mysqld时,在对应mysql目录下运行:bin/mysqld_safe & 可以启动成功,在bin目录里启动会失败,在目录里运行:bin./mysqld_safe --defaults-file=../my.cnf --user=mysql & 会失败,会无法加载my.cnf配置文件。

  6. 启动第二个mysqld方法: mysql -S /data/mysql2.sock -p123456  # mysql -S  第二个mysql sock 的路径,密码123456

  7. 关闭第二个mysqld方法:

    A. 先找出第二个mysqld的pid :ps aux|grep 3307   #第二个mysqld我配置的端口为 3307


    [root@KAKA ~]# ps aux|grep 3307

    mysql     6136  0.0 71.2 1011252 352200 pts/0  Sl   13:55   0:03 /soft/mysql/bin/mysqld --basedir=/soft/mysql --datadir=/data/mysql --plugin-dir=/soft/mysql/lib/plugin --user=mysql --log-error=/data/mysql/KAKA.err --pid-file=/data/mysql/KAKA.pid --socket=/tmp/mysql.sock --port=3307

 

 B.  kill 6136          #不能用kill -9 6136 以免造成数据库数据损


8. 在初始化第二个mysql 数据库时,提示没有my-default.cnf.

  cp /etc/my.cnf /soft/mysql2/support-files/my-default.cnf  

  vi /soft/mysql2/support-files/my-default.cnf 修改mysql2的正确路径和端口

9.  设置slave

  A.修改my.cnf文件,删掉行server-id= ,或改成其他,不能和master相同。

  B.根据 master的配置,添加行:

replicate-do-db=abc                 #同步数据库abc

 #replicate-ignore-db=abc             #同步除了abc以外的数据库


10.手动删除data 下的mysql-bin.0000* 的文件后,导致mysqld不能启动的问题:

  A,注释掉 my.cnf文件内的 log-bin=mysql-bin ,binlog-do-db=abc  行;

  B,删除data目录下的 mysql-bin.index 文件。

 

11. show slave status\G;   Slave_IO_Running: connecting 的问题

  请确认在master mysql 上,设置了replication 的用户。

12.重启master mysql 后, show slave status\G; Slave_IO_Running:变成 connecting 的问题

  由于重启后,mysql-bin.000001已经不再此当前最新的日志,此时是0002,需要在 slave mysql重新启动slave同步功能:stop slave; start slave;


13.给slave  mysql  设置flush tables with read lock;后,即使master mysql 有发动,slave mysql 也不会有反应。当执行 unlock tables;后会继续同步。

 


      本文转自笔下生辉  51CTO博客,原文链接:http://blog.51cto.com/752030200/1827521,如需转载请自行联系原作者




相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
SQL 关系型数据库 MySQL
mysql主从复制概述和配置
【10月更文挑战第22天】MySQL 主从复制是一种将主服务器的数据复制到一个或多个从服务器的技术,实现读写分离,提高系统性能和可用性。主服务器记录变更日志,从服务器通过 I/O 和 SQL 线程读取并应用这些变更。适用于读写分离、数据备份和恢复、数据分析等场景。配置步骤包括修改配置文件、创建复制用户、配置从服务器连接主服务器并启动复制进程。
|
29天前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
29天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
85 2
|
2月前
|
SQL 关系型数据库 MySQL
Mysql中搭建主从复制原理和配置
主从复制在数据库管理中广泛应用,主要优点包括提高性能、实现高可用性、数据备份及灾难恢复。通过读写分离、从服务器接管、实时备份和地理分布等机制,有效增强系统的稳定性和数据安全性。主从复制涉及I/O线程和SQL线程,前者负责日志传输,后者负责日志应用,确保数据同步。配置过程中需开启二进制日志、设置唯一服务器ID,并创建复制用户,通过CHANGE MASTER TO命令配置从服务器连接主服务器,实现数据同步。实验部分展示了如何在两台CentOS 7服务器上配置MySQL 5.7主从复制,包括关闭防火墙、配置静态IP、设置域名解析、配置主从服务器、启动复制及验证同步效果。
Mysql中搭建主从复制原理和配置
|
3月前
|
关系型数据库 MySQL 数据安全/隐私保护
docker应用部署---MySQL的部署配置
这篇文章介绍了如何使用Docker部署MySQL数据库,包括搜索和拉取MySQL镜像、创建容器并设置端口映射和目录映射、进入容器操作MySQL,以及如何使用外部机器连接容器中的MySQL。
docker应用部署---MySQL的部署配置
|
2月前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
70 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
3月前
|
关系型数据库 MySQL Go
go抽取mysql配置到yaml配置文件
go抽取mysql配置到yaml配置文件
|
3月前
|
关系型数据库 MySQL Unix
MySQL配置不区分大小写的方法
结论 通过适当配置 lower_case_table_names参数以及在数据定义和查询中选择合适的校对规则,可以灵活地控制MySQL中的大小写敏感性,以适应不同的应用场景和需求。这样的设置既可以增加数据库的兼容性,又可以在必要时利用大小写敏感性进行精确的数据处理。需要注意的是,修改 lower_case_table_names参数后,最好在数据库初始化时进行,以避免现有表名的大小写问题。
330 3
|
3月前
|
SQL 关系型数据库 MySQL
MySQL主从配置
MySQL主从配置
|
2月前
|
数据可视化 关系型数据库 MySQL
【IDEA】配置mysql环境并创建mysql数据库
【IDEA】配置mysql环境并创建mysql数据库
130 0