现象:
原因:
原因来源于虚机是云平台克隆出来的。查了很多解决方法,并没有找到一个说全的,大部分都是只说修改server_uuid,笔者修改后并未生效,后面查询到server_id的报错,后修改成功。
解决方法:
登入两方数据库,输入下述命令,查询id值是否一致
mysql> SHOW VARIABLES LIKE '%server_%';
+---------------------------------+--------------------------------------+
| Variable_name | Value |
+---------------------------------+--------------------------------------+
| innodb_ft_server_stopword_table | |
| server_id | 77 |
| server_id_bits | 32 |
| server_uuid | 61d257e9-1c8f-11ed-9ba6-fa160a1d0d0e |
+---------------------------------+--------------------------------------+
4 rows in set (0.01 sec)
mysql> SHOW VARIABLES LIKE '%server_%';
+---------------------------------+--------------------------------------+
| Variable_name | Value |
+---------------------------------+--------------------------------------+
| innodb_ft_server_stopword_table | |
| server_id | 77 |
| server_id_bits | 32 |
| server_uuid | 61d257e9-1c8f-11ed-9ba6-fa160a1d0d0e |
+---------------------------------+--------------------------------------+
4 rows in set (0.01 sec)
发现其中server_uuid和server_id值相同
1.修改server_id
进入linux服务器,输入
find / -iname "my.cnf"
2:环境不同目录不尽相同,进入查询到的配置文件,将其中的server-id改成于主机不同的(或者直接rm -f删除文件)
vim /etc/my.cnf
(修改图中红框里面的值,改成与主机不一致的)
2.修改server_uuid
1:使用 find / -iname "auto.cnf" 命令查找你数据库的auto.cnf 配置文件。
find / -iname "auto.cnf"
2:环境不同目录不尽相同,进入查询到的配置文件,将其中的server-id改成于主机不同的(或者直接rm -f删除文件)
vim /usr/local/mysql/data/auto.cnf
[auto]
server-uuid=61d257e9-1c8f-11ed-9ba6-fa160a1d0d0e(改这个地方)
3.验证
1.从数据库,重新启动mysql
systemctl restart mysqld
2.登录mysql,再次验证
如下,成功。