Existem várias razões possíveis para o erro 1114.
A primeira coisa a procurar é se os nós tiverem permissões de gravação em suas pastas de dados. O usuário que executa ndbd
no nó de dados 1 é o proprietário da pasta /home/admin/MySQL_Cluster/1/
? Também verifique isso no nó 2.
Em seguida, verifique os requisitos de hardware de seus nós, conforme link . Mais importante, certifique-se de que todos os nós tenham uma quantidade igual de RAM. Além disso, verifique se a quantidade de RAM é suficiente para armazenar todos os dados e índices (você precisa de cerca de 2,5 GB por nó NDB para sua configuração, mas 3 GB seria melhor).
O seu script falha imediatamente, ou depois de inserir um número de linhas? Se for capaz de escrever algumas linhas, do que falhar, o problema não tem a ver com permissões de gravação nos nós.
Tente inserir alguns dados no banco de dados manualmente (usando o mysql-client), e quando ele falhar, digite show warnings
, isso deve fornecer mais informações sobre o erro que você está recebendo.
Enquanto você estiver usando o cliente mysql, execute este script:
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS
FROM INFORMATION_SCHEMA.TABLES
WHERE ENGINE='ndbcluster';
Ele mostrará se você possui tabelas grandes usando ndb_engine
.
Editar: Adicionadas informações baseadas nos comentários do jantar aban_89.
Parece que você ainda está trabalhando com os parâmetros de configuração padrão. Veja a documentação do MySQL : a valor padrão para MaxNoOfTables é 128.
Você deve desligar o nó de gerenciamento do NDB e reiniciá-lo com o seu arquivo de configuração:
/usr/local/mysql/bin/ndb_mgmd --initial --reload --config-file=/usr/local/mysql/config.ini
Depois disso, faça uma reinicialização contínua do seu nós de dados, digitando o cliente NDB Management e um por um reiniciando os nós do NDB. Você deve ver a saída assim:
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=1 @192.168.5.4 (mysql-5.6.11 ndb-7.3.2, Nodegroup: 0, Master)
id=2 @192.168.5.75 (mysql-5.6.11 ndb-7.3.2, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=49 @192.168.5.4 (mysql-5.6.11 ndb-7.3.2)
[mysqld(API)] 6 node(s)
id=50 (not connected, accepting connect from 192.168.5.4)
id=51 (not connected, accepting connect from 192.168.5.4)
id=52 @192.168.5.4 (mysql-5.6.11 ndb-7.3.2)
id=53 (not connected, accepting connect from 192.168.5.75)
id=54 (not connected, accepting connect from 192.168.5.75)
id=55 @192.168.5.75 (mysql-5.6.11 ndb-7.3.2)
ndb_mgm> 1 restart
Node 1: Node shutdown initiated
Node 1: Node shutdown completed, restarting, no start.
Node 1 is being restarted
ndb_mgm> Node 1: Start initiated (version 7.3.2)
Node 1: Started (version 7.3.2)
2 restart
Node 2: Node shutdown initiated
Node 2: Node shutdown completed, restarting, no start.
Node 2 is being restarted
ndb_mgm> Node 2: Start initiated (version 7.3.2)
Node 2: Started (version 7.3.2)
Uma vez que a reinicialização contínua tenha sido completada, seus nós de dados usarão a nova configuração e - esperançosamente - seus problemas serão resolvidos.
Editar 2: elaborar com base no comentário # 2
De esta página : o script pode simplesmente ser muito grande para o seu servidor. Tente dividi-lo em arquivos separados de cerca de 1000 linhas cada, isso deve criar 3 ou talvez 4 arquivos. (Eu usei link para referência).
Não se esqueça de adicionar use lportal;
sobre cada arquivo ou de especificar o banco de dados em seu comando de importação (por exemplo, mysql -uliferay -p lportal < minimal.1.sql
).