MySQL 出错时反馈的代码代表出错的原因,我们只有明白这些代码代表的意思,才能了解 MySQL 数据库的错误,找出原因,解决问题。下面介绍 MySQL 服务器和客户端中的错误代码、提示消息的生成方式和查看方法,最后还对 MySQL 中常见的错误代码做了详细说明。
MySQL服务器端错误代码和消息
MySQL 是根据安装目录下 share 中的 errmsg-utf8.txt 文件来生成 include 下 mysqld_error.h 的错误定义的。
默认情况下,服务器出错代码都是以 1 开头的,例如“1004 SQLSTATE: HY000 (ER_CANT_CREATE_FILE)”,该消息的错误代码为 1004,表示“无法创建文件”。
MySQL客户端错误代码和消息
MySQL 是根据安装目录下 include 中的 errmsg.h 文件来生成错误代码的。
默认情况下,客户端出错代码都是以 2 开头的,例如错误代码为 2025(CR_PROBE_MASTER_CONNECT)的,表示连接到主服务器时出错。
常见错误代码
常见的服务器错误代码及说明如下表所示:
错误代码 | 说 明 |
---|---|
1004 | 无法创建文件 |
1005 | 无法创建数据表、创建表失败 |
1006 | 无法创建数据库、创建数据库失败 |
1007 | 无法创建数据库,数据库己存在 |
1008 | 无法删除数据库,数据库不存在 |
1009 | 不能删除数据库文件导致删除数据库失败 |
1010 | 不能删除数据目录导致删除数据库失败 |
1011 | 删除数据库文件时出错 |
1012 | 无法读取系统表中的记录 |
1013 | 无法获取的状态 |
1014 | 无法获得工作目录 |
1015 | 无法锁定文件 |
1016 | 无法打开文件 |
1017 | 无法找到文件 |
1018 | 无法读取的目录 |
1019 | 无法为更改目录 |
1020 | 记录已被其它用户修改 |
1021 | 硬盘剩余空间不足,请加大硬盘可用空间 |
1022 | 关键词重读,更改记录失败 |
1023 | 关闭时发生错误 |
1025 | 更改名字时发生错误 |
1032 | 记录不存在 |
1036 | 数据表是只读的,不能对它进行修改 |
1037 | 系统内存不足,请重启数据库或重启服务器 |
1042 | 无效的主机名 |
1044 | 当前用户没有访问数据库的权限 |
1045 | 不能连接数据库,用户名或密码错误 |
常见的客户端错误代码及说明如下所示:
错误代码 | 说 明 |
---|---|
2000 | 未知 MySQL 错误 |
2001 | 不能创建 UNIX 套接字(%d) |
2002 | 不能通过套接字“ %s”(%d)连接到本地 MySQL 服务器, self 服务未启动 |
2003 | 不能连接到 %s ”(%d )上的 MySQL 服务器,未启动 mysql 服务 |
2004 | 不能创建 TCP/IP 接字(%d) |
2005 | 未知的 MySQL 服务器主机“ %s”(%d) |
2007 | 协议不匹配,服务器版本=%d,客户端版本=%d |
2008 | MySQL 客户端内存溢出 |
2009 | 错误的主机信息 |
2010 | 通过 UNIX 套接字连接的本地主机 |
2012 | 服务器握手过程中出错 |
2013 | 查询过程中丢失了与 SQL 服务器的连接 |
2014 | 命令不同步,现在不能运行该命令 |
2024 | 连接到从服务器时出错 |
2025 | 连接到主服务器时出错 |
2026 | SSL 连接错误 |
也可以百度其他答案...