2013-08-29 19 views
5

Oggi il mio datacenter ha avuto un guasto dell'interruttore che ha provocato la perdita di potenza dei miei server. Gestisco un cluster MySQL a 4 nodi. Ho riavviato il cluster, prima i nodi di gestione, quindi i nodi di dati, quindi dopo l'esecuzione dei nodi di dati ho avviato i nodi SQL. Ho quindi controllato il cluster con ndb_mgm -e SHOW. Tutto sembrava a posto fino a quando ho provato a eseguire una query. Ho ottenuto questo errore,MySQL Cluster ERROR 1296 (HY000): errore 157 'codice errore sconosciuto' da NDBCLUSTER

ERRORE 1296 (HY000): Got error 157 'il codice di errore Unknown' dal NDBCLUSTER

verifico i log di MySQL e non poteva trovare eventuali errori. Ho quindi provato uno spegnimento completo e il riavvio del cluster MySQL e ho controllato la configurazione tra l'arresto e l'avvio. Tutto sembrava dare un'occhiata. Ho quindi eseguito una query su un altro database utilizzando il motore NDBCLUSTER. La query ha avuto successo. Ho provato a cercare su google ma nessuno sembra avere alcuna risposta che aiuti. Ho controllato la configurazione, mi sono assicurato che ndbd sia in esecuzione sui nodi dati, ecc. Gli altri database sembrano funzionare bene tranne questo. Ho un backup del database, ma preferirei molto preferibilmente recuperare il database, se possibile.

Se qualcuno ha qualche suggerimento o idee, sarebbe molto apprezzato.

Grazie in anticipo.

risposta

7

errore 157 è in realtà 'non poteva connettersi al motore di storage' e il fatto che MySQL non riesce a riportare correttamente che l'errore è un bug: http://bugs.mysql.com/bug.php?id=44817

Il caso descritto in tale bug menzioni che si ottiene l'errore quando si prova a interrogare una tabella in NDB quando il cluster è ancora inattivo.

Quindi sto solo indovinando, ma vorrei concludere che il tuo cluster non è stato avviato. O hai perso l'avvio di uno dei nodi, oppure qualcosa è andato storto iniziando uno dei nodi.

+1

ndb_mgm -e comando show mostra che tutti i nodi siano in esecuzione. Altri database nel cluster stanno funzionando bene ma questo mi sta dando problemi. Quindi mi ha un po 'perplesso al momento. –

0

Verificare che il server MySQL sia realmente connesso all'archivio NDB. Da un server mysql che deve essere collegato a NDB

SHOW GLOBAL STATUS LIKE 'Ndb_cluster_node_id';

La risposta è> 0?

SHOW GLOBAL STATUS LIKE 'Ndb_number_of_data_nodes';

La risposta è> 0?

In caso contrario, il server MySQL non è collegato e quindi vi consiglio di controllare il firewall e/etc/hosts tavolo e assicurarsi che non avete una linea come:

127.0.0.1 localhost ..

migliori saluti

Johan

+0

Ho controllato ed entrambi hanno restituito 0, quindi ho controllato il firewall e apportato le modifiche corrette. Ora restituisce i risultati corretti, ma ricevo comunque l'errore. La cosa strana è che altri database stanno funzionando bene. È solo questo. –