MariaDB报错解决方法
1)服务起不来或者加进不了集群
法1:
rm -rf mysql.sock
rm -rf galera.cache
rm -rf mariadb.pid
rm -rf /var/lock/subsys/mysql
法2:
把/etc/my.cnf/server.cn
把集群配置全部注释,启动单机服务,然后再关闭服务,把集群配置再加进去,再启动服务
注意:若不是加入不了集群问题,就不要把集群文件删了
2)Table '.\mysql\proc' is marked as crashed and should be repaired 报错
解决方法:
找到mysql的安装目录的bin/myisamchk工具,在命令行中输入:
myisamchk -c -r /var/lib/mysql/mysql/proc.MYI
然后myisamchk 工具会帮助你恢复数据表的索引。重新启动mysql,问题解决。
3)[ERROR] Found 1 prepared transactions! It means that mysqld was not shut down properly last time and critical recovery inform
ation (last binlog or tc.log file) was manually deleted after a crash. You have to start mysqld with --tc-heuristic-recover switch to commit
or rollback pending transactions.
160107 16:10:46 [ERROR] Aborting
解决方法
service mysql start --tc-heuristic-recover=ROLLBACK
4)4160107 16:23:41 [ERROR] WSREP: gcs/src/gcs_core.cpp:long int gcs_core_open(gcs_core_t*, const char*, const char*, bool)():206: Failed to open
backend connection: -98 (Address already in use)
解决方法,把这一台重新初始化,把
wsrep_cluster_address="gcomm://"后面的IP重新清空
5)160106 0:42:48 [Note] InnoDB: Shutdown completed; log sequence number 1617594
160106 0:42:48 [Note] /usr/sbin/mysqld: Shutdown complete
解决方法:1、检查有没有3306端口或MySQL服务已经启动占用了端口
2、关闭防火墙和SElinux
6)注意:MariaDBR的同步方式有两种 mysqldump、rsync,建议选择rsync的同步方式
mysqldump 的同步方式只要前方有一数据库坏了,我连不上,那么就算前方数据库修好了,我连接他就会报没有权限且永远不能同步
rsync 的同步方式连接时不管数据库有没有坏,我是基于ssh的同步,只要ssh开了,都装了rsync,等前方数据库好了,同步过去就不会有问题