Domanda

Ho una configurazione di cluster MySQL, ci sono 2 nodi di dati e 1 nodo di gestione. Ora stiamo ottenendo gli errori sui nostri nodi di dati quando si fa inserti.

  

ERRORE 1114 (HY000): La tabella degli utenti 'è pieno

Si prega di ogni aiuto è apprezzato, Si tratta di un problema di configurazione, in caso affermativo quale nodo? ogni nodo è un server di Ubuntu 9.

È stato utile?

Soluzione

La risposta è qui: http: / /dev.mysql.com/doc/refman/5.0/en/faqs-mysql-cluster.html#qandaitem-B-10-1-13

In breve: il motore ndb contiene tutti i dati nella RAM. Se i nodi hanno 1 GB di RAM e si sta tentando di caricare un database 4 GB si sono (quasi) fuori di fortuna.

C'è un modo per configurare NDB per l'utilizzo del disco per memorizzare i dati in modo che la RAM è utilizzato solo per gli indici dei negozi (che devono ancora essere memorizzati in RAM), ecco come: http://dev.mysql.com /doc/refman/5.1/en/mysql-cluster-disk-data-objects.html

Se lo fai, però, si otterrà performance di gran lunga inferiori.

Altri suggerimenti

Nel caso qualcuno passa da questo problema, La causa principale di questo problema è il valore per MaxNoOfConcurrentOperations, che deve essere sollevata conseguenza congiuntamente al numero di righe della tabella dovrebbe attesa.

Il seguente dovrebbe essere soluzioni per questo problema.

  1. modificare la tabella della creazione iniziale CREATE TABLE per includere il valore MAX_ROWS di essere il doppio del numero di righe di questa tabella si prevede di attesa.

  2. Aumentare il valore di MaxNoOfConcurrentOperations e MaxNoOfConcurrentTransactions ad un valore superiore alla più grande tavolo nel cluster. Questo è probabilmente perché MySQL Cluster funziona su tutte le righe in parallelo quando si applica qualsiasi operazione su un grande tavolo.

Controllare l'impostazione innodb_data_file_path - questo errore suggerisce è stato superato lo spazio disponibile definito in quella chiave. Controllare questo link per ridefinire lo spazio per InnoDB.

In alternativa, si può solo avere esaurito lo spazio su disco nella partizione che i dati vengono memorizzati su.

I affrontato lo stesso errore quando stavo caricando struttura solo le tabelle DB. Il che significa DataMemory o IndexMemory non erano di aiuto qui. Anche il numero di tabelle non ha raggiunto il limite in MaxNoOfTables quindi non è il problema pure. La soluzione per me qui era quello di aumentare i valori di MaxNoOfOrderedIndexes e MaxNoOfUniqueHashIndexes che riflettono il numero massimo di indici si può avere nel cluster. Quindi, se ci sono molti indici nel vostro DB cercare di aumentare quelle variabili di conseguenza. Naturalmente, un [riavvio a rotazione] [1] deve essere fatto dopo che il cambiamento abbia effetto!

Spero che questo potrebbe aiutare qualcuno!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top