MySQL常見錯誤提示及解決方案

來源:互聯網
上載者:User
MySQL常見錯誤提示及解決方案

130 :檔案格式不正確。(還不是很清楚錯誤的狀況)

145 :檔案無法開啟。

1005:建立表失敗。

1006:建立資料庫失敗。

1007:資料庫已存在,建立資料庫失敗。

1008:資料庫不存在,刪除資料庫失敗。

1009:不能刪除資料庫檔案導致刪除資料庫失敗。

1010:不能刪除資料目錄導致刪除資料庫失敗。

1011:刪除資料庫檔案失敗。

1012:不能讀取系統資料表中的記錄。

1016:檔案無法開啟,使用後台修複或者使用 phpmyadmin 進行修複。

Quote:

開始=>所有程式=>附件=>命令提示字元

輸入 mysql 所在硬碟盤符

cd mysql 所在目錄

cd bin

輸入 myisamchk -f D:usr/local/mysql/data/bbs/PW_members.MYI

ps : D:usr/local/mysql/data/bbs 是你論壇資料庫的路徑

-f 根據具體情況選擇,一般也可以選擇 -r

注意你的 系統C盤或放資料庫的硬碟空間是否足夠,一般小於 1G 很容易出現錯誤。

或用mysqlcheck命令進行修複。具體的方法:利用命令列進入mysql/bin目錄,執行

mysqlcheck -o -r phpwind -uroot -p

其中phpwind是你資料庫的名稱,root是你的資料庫使用者名稱,然後會提示你輸入密碼。然後就會修複你的資料庫。

1017:伺服器非法關機,導致該檔案損壞。

1020:記錄已被其他使用者修改。

1021:硬碟剩餘空間不足,請加大硬碟可用空間。

1022:關鍵字重複,更改記錄失敗。

1023:關閉時發生錯誤。

1024:讀檔案錯誤。

1025:更改名字時發生錯誤。

1026:寫檔案錯誤。

1030:可能是伺服器不穩定。(具體原因不是很清楚)

1032:記錄不存在。

1036:資料表是唯讀,不能對它進行修改。

1037:系統記憶體不足,請重啟資料庫或重啟伺服器。

1038:用於排序的記憶體不足,請增大排序緩衝區。

1040:已到達資料庫的最大串連數,請加大資料庫可用串連數。

Quote:

在my.ini 修改max_connections=100為max_connections=1000或更大,重啟mysql

1041:系統記憶體不足。

1042:無效的主機名稱。

1043:無效串連。

1044:資料庫使用者權限不足,請聯絡空間商解決。

1045:資料庫伺服器/資料庫使用者名稱/資料庫名/資料庫密碼錯誤,請聯絡空間商檢查帳戶。

Quote:

方法:確保論壇data目錄下的sql_config.php使用者名稱與密碼都正確.如果使用者忘記了資料庫的密碼,可以按如下方式進行密碼的修改:

如果 MySQL 正在運行,首先停止。

啟動 MySQL :bin/safe_mysqld --skip-grant-tables &

就可以不要求輸入密碼就進入 MySQL 了。

然後就是

以下為引用的內容:
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;

1046:沒有選擇資料庫。

1048:欄位不可為空。

1049:資料庫不存在。

1050:資料表已存在。

1051:資料表不存在。

1054:欄位不存在,自行建立欄位。

1060:欄位重複,導致無法插入這個欄位。

1062:欄位值重複,入庫失敗

Quote:

1.如果出類似主碼為"65535"的錯誤,可以查看相關表的自增欄位,將欄位值改在就可以

2.確保相關資料表中主碼重複的欄位是否存在,如果存在刪除這條記錄

3.備份資料庫,修複相關表(注:這種情況比較常見,如pw_posts表,對錶進行修複的時候不要忘記備份)

1064:MySQL 不支援錯誤提示中的編碼。

1065:無效的 SQL 陳述式,SQL 陳述式為空白。

1067:MySQL 版本為 5,不支援空的預設值。

1081:不能建立 Socket 串連。

1114:資料表已滿,不能容納任何記錄。

1115:設定的字元集在 MySQL 並沒有支援。

1116:開啟的資料表太多。

1129:資料庫出現異常,請重啟資料庫。

1130:串連資料庫失敗,沒有串連資料庫的許可權。

1133:資料庫使用者不存在。

1135:可能是記憶體不足夠,請聯絡空間商解決。

1141:目前使用者無權訪問資料庫。

1142:目前使用者無權訪問資料表。

1143:目前使用者無權訪問資料表中的欄位。

1146:資料表缺失,請恢複備份資料

1147:未定義使用者對資料表的存取權限。

1149:SQL 陳述式語法錯誤。

1158:網路錯誤,出現讀錯誤,請檢查網路連接狀況。

1159:網路錯誤,讀逾時,請檢查網路連接狀況。

1160:網路錯誤,出現寫錯誤,請檢查網路連接狀況。

1161:網路錯誤,寫逾時,請檢查網路連接狀況。

1169:欄位值重複,更新記錄失敗。

1177:開啟資料表失敗。

1180:提交事務失敗。

1181:復原事務失敗。

1193:不支援字元集限定(SET NAMES)。

1203:目前使用者和資料庫建立的串連已到達資料庫的最大串連數,請增大可用的資料庫連接數或重啟資料庫。

1205:加鎖逾時。

1211:目前使用者沒有建立使用者的許可權。

1216:外鍵約束檢查失敗,更新子表記錄失敗。

1217:外鍵約束檢查失敗,刪除或修改主表記錄失敗。

1226:目前使用者使用的資源已超過所允許的資源,請重啟資料庫或重啟伺服器。

1227:許可權不足,您無權進行此操作。

1235:MySQL版本過低,不具有本功能。

1250:用戶端不支援伺服器要求的認證協議,請考慮升級用戶端。

1251:Client 不能支援 authentication protocol 的要求

Client does not support authentication protocol requested by server; consider upgrading MySQL client

Quote:

方法1:mysql> SET PASSWORD FOR

-> ' some_user '@' some_host ' = OLD_PASSWORD(' newpwd ');

結合我們的實際情況,在 MySQL Command Line Client 下運行:

set password for root@localhost = old_password('123456');

方法2:

以下為引用的內容:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;

上面紅色的部分請按自己實際情況修改。

1267:不合法的混合字元集。

2002:伺服器連接埠不對,請諮詢空間商正確的連接埠。

2003:MySQL 服務沒有啟動,請啟動該服務。

2008:MySQL client ran out of memory

錯誤指向了MySQL客戶mysql。這個錯誤的原因很簡單,客戶沒有足夠的記憶體儲存全部結果。

2013:遠端連線資料庫是有時會有這個問題,MySQL 伺服器在執行一條 SQL 陳述式的時候失去了串連造成的。

10048:

Quote:

建議在my.ini檔案中修改最大串連數,把 mysql_connect() 方法都改成了 mysql_pconnect() 方法.
要修改mysql_pconnect(),可以在論壇的data目錄的sql_config.php中$pconnect = 0; //是否持久串連修改成$pconnect = 1;開啟防重新整理,嚴禁重新整理太快。

10055:沒有緩衝空間可利用

Quote:

查看下你的C盤空間是否已經滿,清除一些沒有用的檔案.

可以在背景"論壇核心設定","核心功能設定"裡"進程最佳化"開啟,"GZIP 壓縮輸出"關閉.

尋找了一下10055(沒有緩衝空間可利用)出錯的原因,分析了my.ini的配製檔案,在my.ini中如下:

以下為引用的內容:
default-storage-engine=INNODB
innodb_additional_mem_pool_size=2M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1M
innodb_buffer_pool_size=10M
innodb_log_file_size=10M
innodb_thread_concurrency=8

覺得可以把innodb_buffer_pool_size=10M 加大如100M或是1000M

以上是對mysql5的

如果是mysql4可以在my.ini中增加如下:

以下為引用的內容:
#innodb_data_file_path = ibdata1:2000M;ibdata2:2000M
#innodb_data_home_dir = c:ibdata
#innodb_log_group_home_dir = c:iblogs
#innodb_log_arch_dir = c:iblogs
#set-variable = innodb_mirrored_log_groups=1
#set-variable = innodb_log_files_in_group=3
#set-variable = innodb_log_file_size=5M
#set-variable = innodb_log_buffer_size=8M
#innodb_flush_log_at_trx_commit=1
#innodb_log_archive=0
#set-variable = innodb_buffer_pool_size=16M
#set-variable = innodb_additional_mem_pool_size=2M
#set-variable = innodb_file_io_threads=4
#set-variable = innodb_lock_wait_timeout=50

把前面的#去了

10061:

Quote:

啟動這台機器上的MySQL服務

如服務啟動失敗

一定是你的my.ini檔案出了差錯,

MySQL服務不能正常啟動

你刪除了它後,MySQL就會按其預設配置運行,

那就沒有問題了

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.