Heim  >  Artikel  >  Datenbank  >  Mögliche MySQL-Server-UUID-Duplizierung für den Server

Mögliche MySQL-Server-UUID-Duplizierung für den Server

黄舟
黄舟Original
2017-02-15 10:40:281331Durchsuche



Ein solches Ereignis tritt während des MySQL-Enterprise-Monitor-Überwachungsprozesses auf. Thema: Mögliche MySQL-Server-UUID-Duplizierung für Serverereignis. Aus der Beschreibung der Eingabeaufforderung geht hervor, dass es Duplikate gibt . uuid, aber tatsächlich gibt es in der Master-Slave-Beziehung keine doppelte UUID. Die Master-Slave-Beziehung wird durch xtrabackup aufgebaut. Was ist also das Problem? Im Folgenden finden Sie eine Beschreibung des Problems, das bei der Überwachung beim Kopieren basierend auf xtrabackup zu doppelten UUIDs führt.


1. Fehlerphänomen

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


###Die Eingabeaufforderungs-UUID wurde N-mal geändert. Diese beiden werden in der MySQL-Instanzüberwachung angezeigt Treffen Die Host-Konfiguration ändert sich ständig

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 . UUID überprüfen
###Wie im Google-Artikel beschrieben, speichert mysql.inventory die von der MySQL-Enterprise-Monitoring-Überwachung verwendeten UUID-Informationen
###UUID anzeigen und mysql.inventory-Tabelle in der Hauptdatenbank

[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} |
+--------+-------------------------------------------------------+


# ## Sehen Sie sich die UUID- und mysql.inventory-Tabellen in der Slave-Datenbank an

[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} |
+--------+-------------------------------------------------------+


### Aus den obigen Abfrageergebnissen wissen wir, dass die Tabelle mysql.inventory dieselbe UUID speichert
###Diese gleiche UUID ist auf die Verwendung von Hot Standby auf Instanzebene zurückzuführen. Die beiden Instanzen haben also dieselbe UUID

###Löschen Sie mysql.inventory und starten Sie dann den Überwachungsagenten neu (weggelassen), das Problem ist gelöst

[root@DBSRV-SLAVE02 ~]# mysql -uroot -p -e "truncate table mysql.inventory" -S /tmp/mysql3307.sock
Enter password:



3. Informationen zur MySQL MEM-UUID-Duplizierung

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.
  • Jeder MySQL-Server verfügt über eine UUID, die in der mysql.inventory-Tabelle gespeichert ist und den MySQL-Server gegenüber dem Rest von MEM eindeutig identifiziert. Die Server-UUID wird verwendet, um Informationen über eine einzelne MySQL-Instanz zu sammeln.

  • Jeder Host (die Maschine, auf der der Agent ausgeführt wird) verfügt über eine UUID, um den Host gegenüber dem Rest eindeutig zu identifizieren MySQL Enterprise Monitor wird verwendet, um die Betriebssysteminformationen (z. B. CPU-, RAM- und Festplattendaten) zu sammeln und festzustellen, ob sich der MySQL-Server auf demselben Host befindet wie zuvor, um festzustellen, wann Daten verschoben wurden Maschinen oder wenn eine Maschine aktualisiert wurde, wird in der Zeile hostid in der Tabelle mysql.inventory gespeichert.

  • Jeder Agent hat eine UUID, um den Agenten zu identifizieren Die MEM.-Agent-UUID wird im Parameter agent-uuid in der Agent-Konfigurationsdatei definiert, um den Ort und die Quelle eines Problems zu bestimmen.

  • Hinweis

Da jeder Host eindeutig sein muss, sollten Sie vorsichtig sein beim Wiederherstellen aus einem Backup, damit Sie keine Hosts mit doppelten SSH-Schlüsseln oder UUIDs haben.

Der MySQL Enterprise Monitor Agent und der MySQL Enterprise Service Manager verwenden die eindeutige Host-ID, die in der

-Tabelle auf dem überwachten Gerät gespeichert ist MySQL Server, um festzustellen, ob es sich bei der überwachten Instanz um einen Klon handelt. Beim Start des Agenten wird die Host-ID des aktuellen Servers mit dem gespeicherten Wert verglichen. Wenn die generierte Host-ID und die gespeicherte Host-ID nicht übereinstimmen, erhalten Sie eine ähnliche Fehlermeldung auf Folgendes in der Agent-Protokolldatei:

%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)!



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn