首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 錯誤代碼完整對照表 (1005-1235):從建表失敗到權限不足的快速定位指南

     編輯:MySQL 綜合教學

MySQL 錯誤代碼完整對照表 (1005-1235)

MySQL 錯誤代碼 (Error Code) 是診斷故障的第一現場指紋。本文整理 1005-1235 範圍內高頻錯誤代碼、標準訊息、中文解釋、常見觸發場景與快速排查動作,作為 DBA 與開發者故障定位速查表。

錯誤代碼對照表

代碼標準訊息中文解釋常見場景排查動作
1005Can't create table建表失敗外鍵定義錯誤、字符集不匹配、磁盤滿檢查 SHOW ENGINE INNODB STATUS、外鍵欄位類型長度一致性
1006Can't create database建庫失敗權限不足、目錄不存在、磁盤滿檢查 datadir 權限、磁盤空間
1007Database exists庫已存在重複 CREATE DATABASE先 DROP 或 IF NOT EXISTS
1008Database doesn't exist庫不存在DROP/USE 不存在的庫確認庫名拼寫、大小寫 (Linux 區分)
1009Error dropping database (can't remove directory)刪庫失敗 (無法刪除目錄)文件被佔用、權限不足、非空目錄lsof 檢查佔用進程、手動清理目錄
1010Error dropping database (can't remove database directory)刪庫失敗 (無法刪除庫目錄)同 1009同 1009
1011Error on delete of database file刪除庫文件錯誤文件系統錯誤、鎖定檢查磁盤健康、重啟服務
1012Can't read record in system table無法讀取系統表記錄數據字典損壞、權限CHECK TABLE mysql.*、恢復備份
1020Record has been changed by another user記錄被其他用戶修改樂觀鎖衝突、並發更新重試機制、版本號欄位
1021Disk is full磁盤空間不足data 目錄磁盤滿清理日志/備份、擴容、檢查 tmpdir
1022Duplicate key鍵值重複主鍵/唯一索引衝突INSERT IGNORE / ON DUPLICATE KEY UPDATE
1023Error on close關閉錯誤文件句柄洩漏重啟服務、檢查 open_files_limit
1024Error reading file讀文件錯誤磁盤壞道、文件損壞備份恢復、檢查硬體
1025Error on rename重命名錯誤RENAME TABLE 失敗、外鍵阻塞先刪外鍵、檢查權限
1026Error writing file寫文件錯誤磁盤滿、只讀、權限同 1021
1032Record doesn't exist記錄不存在UPDATE/DELETE 未命中檢查 WHERE 條件、事務隔離級別
1036Table is read only表唯讀MyISAM 表損壞、FLUSH TABLES WITH READ LOCKREPAIR TABLE、UNLOCK TABLES
1037Out of memory內存不足排序緩存/連接緩存耗盡調大 sort_buffer_size、減少並發
1038Out of sort memory排序內存不足ORDER BY 大結果集調大 sort_buffer_size、加索引避免 filesort
1040Too many connections連接數達上限max_connections 耗盡調大 max_connections、連接池洩漏排查
1041Out of memory系統內存不足OS OOM Killer調整 innodb_buffer_pool、升級內存
1042Bad host無效主機名DNS 解析失敗、skip-name-resolve檢查 /etc/hosts、啟用 skip-name-resolve
1043Invalid connection無效連接網絡中斷、超時檢查防火牆、keepalive、驅動版本
1044Access denied for user to database用戶無庫訪問權限GRANT 缺失、Host 不匹配SHOW GRANTS、檢查 User/Host 欄位
1045Access denied (user/password)用戶名或密碼錯誤密碼錯誤、插件不匹配 (caching_sha2_password)重置密碼、指定 --default-auth=mysql_native_password
1048Column cannot be null欄位不能為空NOT NULL 欄位插入 NULL應用層校驗、DEFAULT 值
1049Unknown database庫不存在同 1008同 1008
1050Table already exists表已存在重複 CREATE TABLEIF NOT EXISTS、先 DROP
1051Unknown table表不存在拼寫錯誤、大小寫、庫未選擇USE db、DESC tbl 確認
1054Unknown column欄位不存在拼寫錯誤、ALTER 未生效DESC tbl 確認欄位名
1062Duplicate entry for key鍵值重複入庫失敗同 1022同 1022
1065Empty query空 SQL 語句驅動發送空字串應用層檢查 SQL 非空
1081Can't create socket無法建立 Socket端口佔用、權限、文件句柄盡netstat -anp、ulimit -n
1114Table is full表滿 (Memory 引擎/磁盤滿)MEMORY 表超過 max_heap_table_size調大參數、轉 InnoDB
1116Too many open tables打開表過多table_open_cache 過小調大 table_open_cache
1129Host is blocked主機被阻擋連接錯誤超過 max_connect_errorsFLUSH HOSTS、調大 max_connect_errors
1130Host not allowed to connect主機無連接權限用戶 Host 欄位不匹配GRANT ... TO 'user'@'%'/IP
1133User doesn't exist用戶不存在DROP USER 後仍在用CREATE USER、FLUSH PRIVILEGES
1141User has no access to database用戶無庫權限同 1044同 1044
1142User has no access to table用戶無表權限GRANT 粒度不足GRANT SELECT/INSERT ON db.tbl TO user
1143User has no access to column用戶無欄位權限欄位級 GRANT 缺失GRANT SELECT (col) ON db.tbl TO user
1146Table doesn't exist表不存在同 1051同 1051
1147Undefined user access to table用戶表權限未定義GRANT 語法錯誤檢查 GRANT 語句
1149Syntax error語法錯誤保留字未轉義、引號不匹配反引號包裹識別符、檢查 SQL
1158Network read error網絡讀錯誤網絡抖動、MTU、驅動檢查網絡、驅動升級
1159Network read timeout網絡讀超時慢查詢、網絡延遲優化 SQL、調大 net_read_timeout
1160Network write error網絡寫錯誤同 1158同 1158
1161Network write timeout網絡寫超時大結果集傳輸、網絡分頁、壓縮協議、調大 net_write_timeout
1169Duplicate entry on update更新時鍵值重複UPDATE 導致唯一鍵衝突同 1022
1177Can't open table無法打開表表損壞、鎖衝突、權限CHECK TABLE、REPAIR TABLE
1180Commit failed提交事務失敗死鎖、鎖等待超時、磁盤錯誤SHOW ENGINE INNODB STATUS 分析死鎖
1181Rollback failed回滾失敗同 1180同 1180
1203User has exceeded max connections用戶連接數超限MAX_USER_CONNECTIONS 觸發調大限制、連接池洩漏排查
1205Lock wait timeout exceeded鎖等待超時innodb_lock_wait_timeout (預設 50s)優化長事務、索引、死鎖檢測
1211User has no create user privilege無創建用戶權限非 root 執行 CREATE USERGRANT CREATE USER ON *.* TO admin
1216Foreign key constraint fails (child)外鍵約束失敗 (子表)插入子表時父表無對應記錄先插父表、檢查外鍵定義
1217Foreign key constraint fails (parent)外鍵約束失敗 (父表)刪除父表時子表仍有引用先刪子表、SET NULL/CASCADE
1226User exceeded resource limits用戶資源超限MAX_QUERIES_PER_HOUR 等觸發調大限制、檢查應用邏輯
1227Access denied; need SUPER privilege權限不足需 SUPER非 SUPER 執行 CHANGE MASTER/SET GLOBAL授予 SUPER 或專用運維賬號
1235This version doesn't support feature版本不支援功能低版本用 GTID/CTE/窗口函數升級版本、改寫兼容語法

快速定位三步法

  1. 看代碼:應用日志 / 驅動異常 / SHOW ERRORS / SHOW WARNINGS 獲取 4 位數字代碼。
  2. 查表:對照上表定位中文解釋與常見場景。
  3. 執行動作:按排查動作欄逐項核查,多數 5 分鐘內定位根因。

進階診斷指令

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved