Un tel événement se produit pendant le processus de surveillance du moniteur d'entreprise MySQL. Sujet : Duplication possible de l'UUID du serveur MySQL pour l'événement du serveur. D'après la description de l'invite, il semble qu'il y ait des doublons. .uuid, mais en fait il n'y a pas d'uuid en double dans la relation maître-esclave. La relation maître-esclave se construit via xtrabackup. Alors quel est le problème ? Ce qui suit est une description du problème qui provoque la duplication de l'uuid lors de la surveillance lors de la copie basée sur xtrabackup.
1. Phénomène de défaut
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
###L'uuid de l'invite a été modifié N fois, ces deux-là apparaîtront dans la surveillance des instances MySQL réunion La configuration de l'hôte change constamment
MySQL server afd6bca4-6636-11e3-9d60-74867ae1c47c changed its hostname 181 times between the following hostnames:DBSRV-TXT01DBSRV-SLAVE02 MySQL server afd6bca4-6636-11e3-9d60-74867ae1c47c changed its connection TCP properties 96 times between the following TCP properties: 127.0.0.1:3306127.0.0.1:3307 AdviceCheck 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 . Vérifiez l'uuid
###Comme décrit dans l'article de Google, mysql.inventory enregistre les informations uuid utilisées par mysql enterpirse moitor monitoring
###View uuid et Table mysql.inventory sur la base de données principale
[root@DBSRV-TXT01 ~]# 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} | +--------+-------------------------------------------------------+
# ## Afficher les tables uuid et mysql.inventory sur la base de données esclave
[root@DBSRV-SLAVE02 ~]# mysql -uroot -p -e " ---Author : Leshami > show variables like 'server_uuid'; ---Blog : http://www.php.cn/ > 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} | +--------+-------------------------------------------------------+
### D'après les résultats de la requête ci-dessus, nous savons que la table mysql.inventory stocke le même uuid
###Ce même uuid est dû à l'utilisation de la veille chaude au niveau de l'instance. Donc les deux instances ont le même uuid
###Effacer mysql.inventory, puis redémarrer l'agent de surveillance (omis), le problème est résolu
[root@DBSRV-SLAVE02 ~]# mysql -uroot -p -e "truncate table mysql.inventory" -S /tmp/mysql3307.sock Enter password:
3. À propos de la duplication de l'UUID MySQL MEM
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.
Chaque serveur MySQL possède un UUID, stocké dans la table mysql.inventory
, qui identifie de manière unique le serveur MySQL auprès du reste de MEM. L'UUID du serveur est utilisé pour rassembler des informations sur une seule instance MySQL.
Chaque hôte (la machine sur laquelle l'agent est exécuté) possède un UUID pour identifier de manière unique l'hôte auprès du reste de MySQL Enterprise Monitor . Ceci est utilisé pour rassembler les informations du système d'exploitation (telles que les données du processeur, de la RAM et du disque). L'ID d'hôte détermine également si le serveur MySQL est sur le même hôte qu'avant, pour identifier le moment où les données ont été déplacées entre eux. machines, ou lorsqu'une machine a été mise à niveau. L'UUID de l'hôte est stocké dans la ligne hostid
de la table mysql.inventory
.
Chaque agent possède un UUID pour identifier l'agent à contacter. L'UUID de l'agent MEM. est défini dans le paramètre agent-uuid
du fichier de configuration de l'agent pour déterminer l'emplacement et la source d'un problème.
Étant donné que chaque hôte doit être unique, soyez prudent. lors de la restauration à partir d'une sauvegarde afin que vous n'ayez pas d'hôtes avec des clés SSH ou des UUID dupliqués
sur l'hôte surveillé. MySQL Server, pour déterminer si l'instance surveillée est un clone. L'ID d'hôte du serveur actuel est vérifié par rapport à la valeur stockée au démarrage de l'agent. Si l'ID d'hôte généré et l'ID d'hôte stocké ne correspondent pas, vous obtenez une erreur similaire. aux éléments suivants dans le fichier journal de l'agent :
%s: [%s] the hostid from mysql.inventory doesn'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.
以上就是Possible MySQL server UUID duplication for server 的内容,更多相关内容请关注PHP中文网(www.php.cn)!