mysql常见错误代码、原因及处理办法

错误代码:1045

错误信息:

Access denied for user 'username'@'password' (using password:YES)

错误原因:权限错误,访问禁止

错误处理:

1)使用正确的用户名及密码,或

2)修改权限后flush privileges

 

错误代码:1036

错误信息:

Table 'xxx' is read only.

错误原因:误移动mysql表或其他文件

错误处理:

检查表文件(.frm、.ibd、.MYD、.MYI)权限

设定表文件所有者及执行权限为:mysql 660

重启服务

 

错误代码:1030 (28)

错误信息:

Got error 28 from storage engine

错误原因:磁盘临时空间不足

错误处理:

清空系统临时文件目录/tmp,或

My.cnf中将tmpdir指向大空间目录

 

错误代码:1030 (-1)

错误信息:

Got error -1 from storage engine

错误原因:磁盘空间不足或innodb_force_recovery参数大于0

错误处理:

检查磁盘空间,不足的要扩容,或

检查my.cnf文件中的innodb_force_recovery的值是否大于0.如果大于则修改后重启服务。

 

错误代码:1050

错误信息:Table 'xxxx' already exists

错误原因:

表已存在

物理迁移后,表的frm文件没有正确删除(或drop table后表的frm文件还存在)

错误处理(第二种情况):

手动删除表frm文件

重启服务

 

 

错误代码:1062

错误信息:

Duplicate entry ‘key’ for key 'PRIMARY'

错误原因:主键重复

错误后果:主从复制断开(SQL线程断开),无法写入

错误处理:

写入时发生,若为自增键则判断是否需要增大自增键值。如int型最大11位整数,表自增超过最大值时,最后一位的键值始终未最大值。或

若自增键未达到最大值,可能是应用写入错误。数据一致性要求不高时,可以选择跳过错误;数据一致性要求高时,可以将自增键去掉重新插入。处理完成后请相关人员验证错误产生原因。或

主从复制场景需要检查从库上是否存在脏数据。

 

错误代码:1032

错误信息:

handler error HA_ERR_KEY_NOT_FOUND

错误原因:主从数据不一致(具体原因情况很多)

错误后果:主从复制断开(SQL线程断开),无法写入

错误处理:

数据一致性要求不高时,跳过错误,或

使用工具修复数据不一致,或

重做主从复制

 

错误代码:1205

错误信息:

Lock wait timeout exceeded

错误原因:主库上大事务未提交,导致后面的事务锁等待超时,同步到从库上锁等待超时。

错误后果:主从复制断开

错误处理:

主库my.cnf参数设置innodb_rollback_on_timeout=1,事务超时时rollback

从库上忽略1205错误,或

Show processlist 查看执行时间较长的SQL并kill

 

错误代码:2013

错误信息:

Error reading packet from server: Lost connection to MySQL server during query

错误原因:反向解析、max_allowed_packet主从不一致、网络问题

错误后果:主从复制断开

错误处理:

主配置文件my.cnf中禁用反向解析skip-name-resolve,或

主从配置文件my.cnf中max_allowed_packet设置为相同值并重启服务,或

主配置文件my.cnf中调整net_write_timeout的值,或其他网络原因导致

 

 

 

你可能感兴趣的:(mysql,处理,原因,常见错误代码)