首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 錯誤代碼速查表:新手入門常見 1005-1235 完整對照與中文解釋

     編輯:MySQL 資料庫相關知識

常見錯誤代碼分類速查

代碼範圍類別典型代碼
1005-1011建庫/建表/刪庫失敗1005(建表失敗)、1007(庫已存在)、1008(庫不存在)、1011(刪除檔案失敗)
1020-1026檔案/記錄操作錯誤1020(記錄被改)、1021(磁碟滿)、1022(鍵值重複)、1024(讀檔錯)、1025(改名錯)、1026(寫檔錯)
1032-1038記憶體/記錄不存在1032(記錄不存在)、1036(唯讀表)、1037(記憶體不足)、1038(排序緩衝不足)
1040-1045連線/認證錯誤1040(連線數滿)、1042(主機名無效)、1044(無庫權限)、1045(帳號密碼錯)
1048-1054欄位/表結構錯誤1048(欄位非空)、1049(庫不存在)、1050(表已存在)、1051(表不存在)、1054(欄位不存在)
1062, 1065資料完整性/SQL 語法1062(值重複)、1065(空 SQL)
1081Socket 連線1081(無法建立 Socket)
1114-1116表滿/開啟過多1114(表滿)、1116(開啟表過多)
1129-1149權限/語法/網路1129(異常重啟)、1130(連線被拒)、1133(用戶不存在)、1146(表不存在)、1149(語法錯誤)
1158-1161網路讀寫超時1158(讀錯)、1159(讀超時)、1160(寫錯)、1161(寫超時)
1169, 1177重複值/開表失敗1169(更新重複)、1177(開表失敗)
1180-1181事務提交/回滾失敗1180(提交失敗)、1181(回滾失敗)
1203, 1205連線數/鎖超時1203(用戶連線滿)、1205(鎖超時)
1211, 1216-1217權限/外鍵1211(無建用戶權限)、1216(外鍵檢查失敗-子表)、1217(外鍵檢查失敗-父表)
1226-1227資源/權限不足1226(資源超限)、1227(權限不足)
1235版本不支援1235(版本過低無此功能)

高頻錯誤深度排查指引

錯誤代碼常見原因解決方向
1040 / 1203max_connections 耗盡調大 max_connections、檢查連線洩漏、用連線池、啟用 thread_cache
1045帳號/密碼/主機不匹配檢查 user.Host、密碼插件 (caching_sha2_password vs mysql_native_password)、FLUSH PRIVILEGES
1062 / 1169唯一鍵/主鍵衝突業務邏輯去重、INSERT IGNORE/ON DUPLICATE KEY UPDATE、檢查自增 ID 耗盡
1114MyISAM 表達 4GB/2GB 上限、InnoDB 表空間滿轉 InnoDB、擴充表空間、分表分區
1130防火牆/授權表 Host 不匹配授權 'user'@'%' 或具體 IP、開放 3306 埠
1146 / 1051表名大小寫不匹配 (Linux)設定 lower_case_table_names=1、統一小寫命名
1158-1161網路不穩/大封包/長查詢調大 net_read_timeout/net_write_timeout/max_allowed_packet、優化慢查詢
1205行鎖等待超時縮短事務、索引優化避免全表掃描鎖、調大 innodb_lock_wait_timeout
1216/1217外鍵約束違反先刪子表再刪父表、檢查關聯資料完整性
1226用戶資源限制 (MAX_QUERIES_PER_HOUR 等)調整 GRANT ... WITH MAX_QUERIES_PER_HOUR、或移除限制

查詢錯誤代碼說明的官方方式

# 命令列
perror 1062
# 輸出:MySQL error code 1062: Duplicate entry for key

# SQL 中
SELECT * FROM information_schema.ENGINES; -- 不含錯誤碼
-- 官方文檔:https://dev.mysql.com/doc/mysql-errors/en/
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved