Possible MySQL Server UUID duplication for server

Source: Internet
Author: User
Tags uuid
During the monitoring process of the mysql enterprise monitor, such an event event appears. Topic: Possible MySQL server UUID duplication for server event. From the description of the prompt, it seems that there are duplicate uuids. In fact, there is no duplicate uuid in the master-slave relationship. . The master-slave relationship is built through xtrabackup. So where is the problem? The following is a description of the problem that causes duplicate uuids when monitoring based on xtrabackup replication.



1. Failure phenomenon
Topic: Possible MySQL server UUID duplication for server afd6bca4-6636-11e3-9d60-74867ae1c47c: NOTICE
Categories: Monitoring and Support Services
Current State: Open
Auto-Closes by Default: Yes
Advisor: Duplicate MySQL Server UUID
Current Status: Notice
Last Checked: May 4, 2015 2:18:02 PM

### Tip uuid has been changed N times. During the MySQL Instances monitoring meeting, these two hosts will be configured continuously.
MySQL server afd6bca4-6636-11e3-9d60-74867ae1c47c changed its hostname 181 times between the following hostnames:
DBSRV-TXT01
DBSRV-SLAVE02

MySQL server afd6bca4-6636-11e3-9d60-74867ae1c47c changed its connection TCP properties 96 times between the following TCP properties:

127.0.0.1:3306
127.0.0.1:3307

Advice
Check that you are not monitoring more than one instance with the following server UUID: afd6bca4-6636-11e3-9d60-74867ae1c47c.
This can be caused by server or host cloning. If this is expected (example: HA scenarios), then please ignore this notice.



2.Check uuid
### Described by Google article, mysql.inventory saves uuid information used by mysql enterpirse moitor
### View the uuid and mysql.inventory tables on the main database
[[email protected] ~] # mysql -uroot -p -e "
show variables like ‘server_uuid’;
select * from mysql.inventory; "-S /tmp/mysql3307.sock
Enter password:
+ --------------- + --------------------------------- ----- +
| Variable_name | Value |
+ --------------- + --------------------------------- ----- +
server_uuid | 1ed85852-dd27-11e4-aa4a-44a8420ba7a5 |
+ --------------- + --------------------------------- ----- +
+ -------- + ---------------------------------------- --------------- +
| name | value |
+ -------- + ---------------------------------------- --------------- +
| uuid | afd6bca4-6636-11e3-9d60-74867ae1c47c |
hostid | ssh: {8a: c7: a9: 42: 3a: 6b: 06: ad: fa: ed: 04: ac: a5: fa: f0: b5} |
+ -------- + ---------------------------------------- --------------- +

### View the uuid and mysql.inventory tables from the library
[[email protected] ~] # mysql -uroot -p -e "--- Author: Leshami
> show variables like ‘server_uuid’; --- Blog: http://blog.csdn.net/leshami
> select * from mysql.inventory; "
Enter password:
+ --------------- + --------------------------------- ----- +
| Variable_name | Value |
+ --------------- + --------------------------------- ----- +
server_uuid | f7e00194-2f59-11e4-bcf6-b82a72d46b21 |
+ --------------- + --------------------------------- ----- +
+ -------- + ---------------------------------------- --------------- +
| name | value |
+ -------- + ---------------------------------------- --------------- +
| uuid | afd6bca4-6636-11e3-9d60-74867ae1c47c |
hostid | ssh: {8a: c7: a9: 42: 3a: 6b: 06: ad: fa: ed: 04: ac: a5: fa: f0: b5} |
+ -------- + ---------------------------------------- --------------- +

### It is learned from the above query result that the same uuid is indeed stored in the mysql.inventory table
### The same uuid is due to the use of instance-level hot standby, so the two instances have the same uuid

### Empty mysql.inventory, then restart monitoring agent (omitted), the problem is solved
[[email protected] ~] # mysql -uroot -p -e "truncate table mysql.inventory" -S /tmp/mysql3307.sock
Enter password:



3.About MySQL MEM UUID duplication

MySQL Enterprise Monitor uses a number of unique values known as UUIDs to identify the different components, including the MySQL instance being monitored. UUID values related to the MySQL instance and the host on which it runs are stored in a table mysql.inventory within the instance MySQL Enterprise Monitor creates this table if it does not exist already.

Each MySQL Server has a UUID, stored in the mysql.inventory table, that uniquely identifies the MySQL server to the rest of MEM. The server UUID is used to collate information about a single MySQL instance.

Each host (the machine on which the agent is running) has a UUID to uniquely identify the host to the rest of MySQL Enterprise Monitor. This is used to collate the OS information (such as CPU, RAM and disk data). The host ID also determines whether the MySQL server is on the same host as it was before, to identify when data has been moved between machines, or when a machine has been upgraded. The host UUID is stored within the hostid row within the mysql.inventory table.

Each agent has a UUID to identify the agent to MEM. The agent UUID is defined within the agent-uuid parameter within the agent configuration file.

These UUIDs are used in combination to register and collate information, and to determine the location and source of an issue.

Note
Because each host must be unique, be careful when restoring from a backup so you do not have hosts with duplicated SSH keys or UUIDs.


http://dev.mysql.com/doc/mysql-monitor/2.3/en/mem-introduction-mysql-server.html



The MySQL Enterprise Monitor Agent and MySQL Enterprise Service Manager use the unique host ID, stored within the mysql.inventory table on the monitored MySQL Server,
to determine whether the instance being monitored is a clone. The host ID of the current server is checked against the stored value when the agent starts. If the generated host ID and stored host ID do not match, you get an error similar to the following in the agent log file:

% s: [% s] the hostid from mysql.inventory does n’t match our agent ’s host-id (% s! =% s)
We assume that this is a cloned host and shutdown now.
Please TRUNCATE TABLE mysql.inventory on this mysql-instance and restart the agent.
If this is a master for replication, please also run SET SQL_LOG_BIN = 0; first.
To fix the problem, connect to the MySQL server using the credentials configured when you installed the agent, and then truncate the mysql.inventory table:

mysql> TRUNCATE mysql.inventory;
Now restart the agent, which recreates the mysql.inventory table with the updated instance UUID and hostid information.

http://dev.mysql.com/doc/mysql-monitor/2.3/en/mem-troubleshooting-agent-start.html

??
Possible MySQL server UUID duplication for server
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.