美文网首页Linux运维开发
MySQL之——主从server-id不生效,The serve

MySQL之——主从server-id不生效,The serve

作者: InnocenceYWQ | 来源:发表于2018-07-19 22:02 被阅读4次

数据库已搭建完成,各种配置均已完成,但是在start slave ;的时候,报错:
ERROR 1200 (HY000): The server is not configured as slave; fix in config file or with CHANGE MASTER TO
这里说,我没有配置为从机,但我明明配置过的啊。

MySQL版本:5.6.19
主:master IP : 172.17.210.199
从:slave IP :172.17.206.138
先看看从机172.17.206.138的my.cnf

[root@centos7 ~]# vi /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
skip-grant-tables
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
tmpdir=/tmp
[mysqld_safe]
log-error=/usr/local/data/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
###############以下是添加主从的配置
server_id = 2
log-bin = /usr/local/mysql/log/solve-bin.log
master-host = 172.17.210.199
master-user = test
master-pass = 123456
master-port = 3306
master-connect-retry = 60

这是MySQL主机172.17.210.199的my.cnf

[root@liuyazhuang ~]$ cat /etc/my.cnf
[mysqld]
log-bin = /u01/mysql/log/masters-bin.log
read-only = 0
basedir = /u01/mysql
datadir = /u01/mysql/data
port = 3306
server_id = 1
socket = /tmp/mysql.sock
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

尝试过多次 重启主从还是报错;
接着手动chang to 后还是一样报错


mysql> CHANGE MASTER TO
MASTER_HOST='172.17.210.199',
MASTER_USER='test',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='masters-bin.000003',
MASTER_LOG_POS=120;
Query OK, 0 rows affected, 2 warnings (0.04 sec)

在从库服务器执行START slave;命令启动slave

mysql> START slave;

报错:
ERROR 1200 (HY000): The server is not configured as slave; fix in config file or with CHANGE MASTER TO
于是查看日志
1.查看SLAVE172.17.206.138上的Mysql报错日志,有这么一句:
141009 6:06:29 [ERROR] Server id not set, will not start slave

意思是,slave的server-id没有设置。
那就奇怪了,我明明在配置文件里面指定了server-id的了,并且有重启mysql服务,难道不起效?
分别在主从上执行命令“show variables like 'server_id';”。

-------从机上面查看端口

mysql> mysql> SHOW VARIABLES LIKE 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 0     |
+---------------+-------+
1 row in set (0.00 sec)

命名设置的是2,怎么会变成0
-------主机上面查看

mysql> SHOW VARIABLES LIKE 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 1     |
+---------------+-------+
1 row in set (0.00 sec)

跟设置的一样。
既然参数文件不生效,就试试在数据库命令里面设置:在从机 172.17.206.138上执行命令

mysql > SET GLOBAL server_id=2;

再次在从机 172.17.206.138上执行slave start和show slave status,成功了。
注意!!!由于“SET GLOBAL server_id=;”命令会在mysql服务重启后丢失,所以一定要写到配置文件里面。
但为什么我之前修改了my.cnf文件不起效?
仔细排查,发现配置里面有[mysqld]和[mysqld_safe],之前将修改的配置内容基本都放在了[mysqld_safe]下面,新增的配置文件放的位置不一样也有关系?于是我尝试把配置文件里修改的部分放在[mysqld]下面,于是改成这样:

[root@liuyazhuang]# cat  /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
skip-grant-tables
user=mysql
symbolic-links=0
tmpdir=/tmp
server_id = 2
log-bin = /usr/local/mysql/log/solve-bin.log
master-host = 172.17.210.199
master-user = test
master-pass = 123456
master-port = 3306
master-connect-retry = 60
 
[mysqld_safe]
log-error=/usr/local/data/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid 

如图,就是将图中标注的内容从[mysqld_safe]下修改到[mysqld]下

截图1.jpg 截图2.jpg

修改之后,再次同步,成功了!

mysql>
mysql> STOP slave;
Query OK, 0 rows affected (0.05 sec)
 mysql> START slave;
Query OK, 0 rows affected (0.00 sec) 

相关文章

  • MySQL之——主从server-id不生效,The serve

    数据库已搭建完成,各种配置均已完成,但是在start slave ;的时候,报错:ERROR 1200 (HY00...

  • ubuntu18.04下mysql5.7集群

    1、主从备份 首先在两台mysql数据库开启binlog日志,同时加上server-id,server-id不能相...

  • MySQL主从同步

    MySQL 主从同步 配置主节点 开启 binlog, 配置全局唯一的 server-id 主节点上创建同步的用户...

  • mysql 主从配置

    实现mysql主从复制的简单步骤: 主服务器: 开启二进制日志 配置唯一的server-id 获得master二进...

  • 1、Mysql主从复制原理

    1、Mysql主从复制原理 在主服务器(master)上启用二进制日志选择一个唯一的server-id创建具有复制...

  • mysql-主从配置

    主库:[mysqld] 下面 主从通过这个id沟通,主从配置id不能相同 server-id = 1 同步数据库名...

  • 复制中的参数介绍

    复制中的重要参数 master上的参数 log-bin server-id #必须 建议端口+ip serve...

  • MySQL主从同步

    MySQL主从同步(一)——原理详解 一、MySQL主从同步简介 MySQL主从同步,即MySQL Replica...

  • 主从:MySQL设置主从同步基础设置

    MySQL主从同步机制 MySQL主从同步是在MySQL主从复制(Master-Slave Replication...

  • mysql 主从基础知识笔记

    mysql 主从同步 mysql 主从,其实也就是mysql 复制了, mysql 主从复制的原理就是从服务器复制...

网友评论

    本文标题:MySQL之——主从server-id不生效,The serve

    本文链接:https://www.haomeiwen.com/subject/udexmftx.html