MYSQL CLUSTER 自带了一个错误代码的查看的小程序。通过这个小东西我们可以方便的把问题解决。 这个程序就是perror 在MYSQL安装目录的bin下面。
如报错:ERROR 1005 (HY000) at line 474868: Can't create table 'Table Name'(errno: 136)
你可以用perror命令查询 错误原因:
#bin/perror --ndb 136
MySQL error code 136: No more room in index file
通过它的解释 我们把 index的相关选项改高一些。如下: (依实际情况决定数值大小)
MaxNoOfTables: 1024
MaxNoOfOrderedIndexes: 1024
MaxNoOfUniqueHashIndexes: 1024
这样问题就能解决了。
1.在线添加节点后使用ALTER ONLINE TABLE TABLENAME REORGANIZE PARTITION命令 将表数据在数据节点上重新分配时报错:
mysql> alter online table Billinfo reorganize partition;
ERROR 1297 (HY000): Got temporary error 410 'REDO log files overloaded (decrease TimeBetweenLocalCheckpoints or increase
NoOfFragmentLogFiles)' from NDBCLUSTER
解决方法:
调整管理节点上的config.ini配置文件里[ndbd default]下的TimeBetweenLocalCheckpoints 值和 FragmentLogFileSize 值
TimeBetweenLocalCheckpoints 参数:
Default value = 20
Changed it to TimeBetweenLocalCheckpoints =6
Setting TimeBetweenLocalCheckpoints to 6 or less means that local checkpoints will be executed continuously without pause, independent of the cluster's workload.
FragmentLogFileSize 参数:
Default value = 16M
Changed it to FragmentLogFileSize=256M
Setting this parameter allows you to control directly the size of the redo log files. This can be useful in situations when MySQL Cluster is operating under a high load and it is unable to close fragment log files quickly enough before attempting to open new ones. Increasing the size of the fragment log files gives the cluster more time before having to open each new fragment log file.
2.插入数据时,报错ERROR 1297 (HY000): Got temporary error 4010 'Node failure caused abort of transaction' from NDBCLUSTER,数据节点强制关闭。
解决方法: 加大:MaxNoOfConcurrentTransactions和MaxNoOfConcurrentOperations参数
3.ERROR 1297 (HY000) at line 1872: Got temporary error 410 'REDO log files overloaded, consult online manual (decrease TimeBetweenLocalCheckpoints, and|or incre' from NDBCLUSTER
Solution : Modify / Add parameter TimeBetweenLocalCheckpoints in your config.ini.
Default value = 20
Changed it to TimeBetweenLocalCheckpoints =6
Setting TimeBetweenLocalCheckpoints to 6 or less means that local checkpoints will be executed continuously without pause, independent of the cluster's workload.
4.error 2815: 'File not found(Ndbd file system inconsistency error, please report a bug). Ndbd file system error, restart node initial'.
解决方法:增大config.ini文件中的NoOfFragmentLogFiles 和 RedoBuffer 参数
5. 错误日志:
Status:Temporary error,restart node
Message:System error,node killed during node restart by other node (Internal error,programming error or missing error message, please report a bug)
Error:2303
Error data:Node 12 killed this node because GCp stop was detected
Error object:NDBCNTR (Line:273)Ox000006
原因:这个问题是因为undo日志空间文件 用完了。
解决方法:增加 undo日志空间文件 ,语法如下
alter logfile group lg_1 add undofile 'undo_2.log' initial_size 1024M engine ndbcluster;