今天在测试环境中配置两个MySQL的复制,按照以前的方法,修改my.cnf之后启动,报错:

[root@XXXX ~]# /etc/init.d/mysql restart

ERROR! MySQL server PID file could not be found!

Starting MySQL......................................................................................................... ERROR! The server quit without updating PID file (/var/lib/mysql/XXXX.pid).

[root@XXXX ~]#

查看log,发现下面信息:

130418  6:15:52 [ERROR] /usr/sbin/mysqld: unknown variable 'master-host=x.x.x.x'

130418  6:15:52 [ERROR] Aborting

网上查了一下,才发现是MySQL5.5之后有了变化。有些参数不用了。官方文档如下:

Obsolete options. The following options are removed in MySQL 5.5. If you attempt to start mysqld with any of these options in MySQL 5.5, the server aborts with an unknown variable error. To set the replication parameters formerly associated with these options, you must use the CHANGE MASTER TO ... statement (see Section 13.4.2.1, “CHANGE MASTER TO Syntax”).

The options affected are shown in this list:

--master-host

--master-user

--master-password

--master-port

--master-connect-retry

--master-ssl

--master-ssl-ca

--master-ssl-capath

--master-ssl-cert

--master-ssl-cipher

--master-ssl-key

查找的时候,发现有篇文章不错,留作参考(原文没有说明不给转载啊)。原址如下:

MySQL 复制配置双机互为主从

A B 为两台 MySQL 服务器,均开启二进制日志,数据库版本 MySQL 5.5。

在两台服务器上编辑配置文件,以下配置添加到[mysqld]

一、服务器参数

[A 服务器 192.168.1.100]

server-id = 1

binlog-do-db = test

binlog-ignore-db = mysql

replicate-do-db = test

replicate-ignore-db = mysql

sync-binlog = 1

[B 服务器 192.168.1.101]

server-id = 2

binlog-do-db = test

binlog-ignore-db = mysql

replicate-do-db = test

replicate-ignore-db = mysql

sync-binlog = 1

二、操作步骤

# A B 服务器停止同步

STOP SLAVE;

# A B 服务器清空MASTER日志

RESET MASTER;

# A B 服务器清空SLAVE日志

RESET SLAVE;

# A 服务器授权同步账户 (我们会同步一次复制数据库文件,所以授权为192.168.1%)

GRANT REPLICATION SLAVE ON *.* TO 'master_slave'@'192.168.1%' IDENTIFIED BY 'master_slave123!@#';

FLUSH PRIVILEGES;

# A 服务器锁表(锁表状态下不能终止mysql进程,否则会失败)

FLUSH TABLES WITH READ LOCK;

# 如果使用SSH,需要重新开启,复制数据库文件。

tar -cvf /tmp/mysql-data.tar /www/mysql

tar -xvf /tmp/mysql-data.tar -C /

# 查看 A 服务器主机状态(记录二进制开始文件,位置)

SHOW MASTER STATUS;

# B 服务器锁表(锁表状态下不能终止mysql进程,否则会失败)

FLUSH TABLES WITH READ LOCK;

# 修改 B 服务器配置 (修改为A服务器的主机状态)

CHANGE MASTER TO MASTER_HOST='192.168.1.100',MASTER_USER='master_slave', MASTER_PASSWORD='master_slave123!@#',MASTER_LOG_FILE='binlog.000001',MASTER_LOG_POS=106;

# 开启 B 服务器同步进程

START SLAVE;

# 查看 B 服务器同步状态是否正常

SHOW SLAVE STATUS;

# 查看 B 服务器主机(记录二进制开始文件,位置)

SHOW MASTER STATUS;

# 修改 A 服务器配置 (修改为B服务器的主机状态)

CHANGE MASTER TO MASTER_HOST='192.168.1.101',MASTER_USER='master_slave',MASTER_PASSWORD='master_slave123!@#',MASTER_LOG_FILE='binlog.000001',MASTER_LOG_POS=106;

# 开启 A 服务器同步进程

START SLAVE;

# 分别查看 A B 服务器同步状态,确定是否成功

SHOW SLAVE STATUS;SHOW MASTER STATUS;

# 解锁 A B 服务器

UNLOCK TABLES;

# 数据测试分别在 A B 服务器上创建表插入数据测试

DROP TABLE IF EXISTS `test`;

CREATE TABLE `test` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`value` varchar(100) DEFAULT '0',

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

INSERT INTO `test` VALUES ('1', 'Hello');

注意:

1. 数据库目录下的master.info的内容会覆盖命令行或my.cnf中指定的部分选项,更改配置需删除master.info

2. my.cnf中的master配置在MySQL 6.0以后会取消,官方建议使用动态的CHANGE MASTER

3. 如果只指定ignore-db而不指定do-db。则新创建数据库的操作也会同步。

互为同步配置实例:

1. A B 互为主从同步test, 不同步mysql:

两个数据库配置中均设置:binlog-do-db=test, binlog-ignore-db=mysql,replicate-do-db=test,replicate-ignore-db=mysql

2. A B 互为主从只同步test,不同步其他数据库,新创建的也不会同步

两个数据库配置中均设置:binlog-do-db=test,replicate-do-db=test

3. A B 互为主从不同步mysql, 同步其他数据库,譬如创建的新数据库也会同步

两个数据库配置中均设置:binlog-ignore-db=mysql,replicate-ignore-db=mysql

4. A B 互为主从同步所有数据库,包括新建的数据库 两个数据库配置中均不设置上述四项。

mysql master host_MySQL5.5.28配置master-maser复制,master-host等参数不用了相关推荐

  1. Salt Master外部Job Cache配置

    原文链接:http://pengyao.org/saltstack-master-external-job-cache.html Salt Master外部Job Cache配置 SaltStack ...

  2. mysql最多多少slave_MySQL5.7主从,单slave多master

    本次实验将使用MySQL 5.6.x作为多"主". 〇 测试环境: OS:CentOS 6.5 master_1: 192.168.1.185(MySQL 5.6.30) mast ...

  3. OpenStack环境搭建(二:Fuel Master的安装及配置)

    实验要求: 完成Virtual box平台安装,会应用相关操作: 在virtual box虚拟平台上部署Fuel Master节点: 在virtual box虚拟平台上部署计算节点Computer: ...

  4. Linux下配置DNS服务器之一--Master服务器

    Linux下配置DNS服务器之一--Master服务器 系统环境: RedHat EL55 Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概 ...

  5. greenplum配置高可用_GREENPLUM介绍之数据库管理(七)- 配置数据库高可用性之master镜像 | 学步园...

    GREENPLUM介绍之数据库管理(七)- 配置数据库高可用性之master镜像 master镜像是通过把primary master对应的standby master放置到不同的物理主机实现的.正常 ...

  6. master slave mysql_MYSQL高可用之复制(MASTER/SLAVE)

    MYSQL高可用之复制(MASTER/SLAVE) 随着互联网的快速发展,对数据库的访问已经越来越频繁,仅凭单个服务器已经无法应对高并发的访问,也无法满足数据库提供7*24的服务,这个时候我们就必须考 ...

  7. debian sarge + postfix + mysql + webmail + web admin安装配置指南

    非常简明的debian sarge + postfix + mysql + webmail + web admin安装配置指南 想在debian上安装postfix邮件系统很多年了,参考了许多网上的资 ...

  8. mysql读写分离,主从配置

    2019独角兽企业重金招聘Python工程师标准>>> 一个完整的mysql读写分离环境包括以下几个部分: 应用程序client database proxy database集群 ...

  9. MySQL编译安装及主从配置

    说明:本实验配置以Cenos6.6和MySQL5.6.35为例 一.编译安装MySQL 1.避免在安装过程中出现问题,先安装系统依赖包 yum install apr autoconf automak ...

最新文章

  1. android获取指针空间大小_腾讯笔试题:浅谈计算机中cpu位数和指针
  2. Mac 装Sequel pro 连接 Mysql 8.0 失败、登录不了、loading问题
  3. HDU 1180 诡异的楼梯
  4. 获取iframe中的contentWindow
  5. SpringBoot入门(1)——创建springBoot项目
  6. 达梦数据库的基本使用
  7. sv队列和动态数组的区别_systemverilog学习(4)动态数组
  8. 浅谈HTML5中canvas中的beginPath()和closePath()的重要性
  9. Keil5 EventRecorder 的STDOUT输出丢包率较大现象
  10. POJ 1187 陨石的秘密 (线性DP)
  11. raml2html 安装,Raml实践
  12. 什么是云原生,跟云计算有什么关系?终于有人讲明白了
  13. C++_结构体的定义和使用_结构体数组---C++语言工作笔记025
  14. github创建远程仓库
  15. SHEditor v0.3 SkinSharp皮肤设计工具
  16. mysql值为空返回0 ,否则 返回1
  17. #2991. kiki君的护盾 (shield)
  18. syslog日志转换器_游侠原创:Windows日志转SYSLOG工具——nxlog
  19. jquery获取元素(父级的兄弟元素的子元素)
  20. 2022全网最全的持续集成基础【你知道的和不知道都在这里】

热门文章

  1. tradingView警报设置
  2. 如何能快速看懂一个Java项目?
  3. Team System:基本 Power Tool 工具
  4. ​​​​​​​NISP一级考试题库
  5. mysql 修改数据库字段update_SQL语句update修改数据库字段
  6. Qt QClipboard 粘贴复制功能学习
  7. RACI职责分配矩阵模型使用详解及案例分析
  8. 计算机二级和英语六级什么时候出成绩,英语四六级口语考试成绩确定标准是什么?成绩何时发布?...
  9. python做一个登录注册界面_Python 实现简单的登录注册界面
  10. 2022年“科学探索奖”获奖者90%具有海外经历