成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

10種常見的MySQL錯誤,你可中招?

譯文
數據庫 MySQL
如果未能對 MySQL 8 進行恰當的配置,您非但可能遇到無法順利訪問、或調用 MySQL 的窘境,而且還可能給真實的應用生產環境帶來巨大的影響。本文列舉了十種 MySQL 常見的錯誤及其解決方案。

【51CTO.com快譯】如果未能對 MySQL 8 進行恰當的配置,您非但可能遇到無法順利訪問、或調用 MySQL 的窘境,而且還可能給真實的應用生產環境帶來巨大的影響。本文列舉了十種 MySQL 常見的錯誤及其解決方案。

[[279559]] 

圖片來自 Pexels

MySQL 8 是當前流行的數據庫引擎之一。在得到正確配置的情況下,它能夠以相對較低成本的方式,幫助成千上萬的數據庫連接到對應的服務器上。

另外,由于它是一種在業界被使用多年的常用數據庫工具,因此您不太可能會遇到某個服務器無法識別它的情況。

可以說,您可以將其配置到任何自己希望處理和存儲數據的應用場景之中。

當然,MySQL 8 也并非是完全“開箱即用”的,如果您未能對其進行恰當的配置,您非但會遇到無法順利訪問、或正確調用 MySQL 的窘境,而且還可能給真實的應用生產環境帶來巨大的影響。

因此,在您碰到某種需要修復的 MySQL 錯誤,決定要在線搜索解決方案之前,請和我一起來看看如下十種 MySQL 常見錯誤,您是否也曾犯過呢?

錯誤 1:拒絕訪問(Denied Access)

在我們實現對數據的任何選擇(SELECT)、插入(INSERT)、更新(UPDATE)、以及刪除(DELETE)之前,我們都需要審查在服務器上,客戶端程序所使用的數據庫帳號。

只有獲得了連接許可、以及具有對 MySQL 服務器進行各種操作的相關權限,才不會出現如下圖所示的“拒絕訪問”之類錯誤。

 

錯誤 2:密碼為空或提示輸入

如果用戶端程序被配置為帶有 -p 的選項,而在啟動時卻并未設置相應的密碼值,那么 MySQL 客戶端就會出現如下的提示,并會被要求輸入密碼:

  

  1. > MySQL -u user_name -p   
  2. Enter password:  

顯然,這是一個系統庫層面上的問題,并非 MySQL 本身的錯誤。簡單快速的解決方案是:直接將 MySQL 的密碼更改為八位或者更短的字符。

當然,您也可以將密碼存儲到某個備選文件中,以方便讀取。

錯誤 3:MySQL 失去服務器連接

此類情況一般發生在網絡環境不佳的遠程連接時。我們一般可以通過打開命令行,手動嘗試連接的方式,來檢驗當前的狀況。

除了對網絡連接狀態進行基本排查之外,您也可以嘗試著通過修改 MySQL 的最大連接數,來診斷是否是資源受限的問題。

錯誤 4:主機名已被阻止

如果 MySQL 服務器收到由某個主機的應用程序所產生的過多連接數,那么該主機就會被數據庫服務器端所阻斷,進而產生如下的錯誤:

 

如上圖所示,一旦數據庫接收到太多帶有“max_connect_errors”的失敗請求,MySQL 就會認為前端出現了錯誤,并立即阻斷主機的進一步連接,直至有 FILHES HOST 語句或是 mysqladmin flush-host 命令的發出。

可見,對于由于“host_name”被阻斷的連接錯誤,我們需要通過“mysqladmin flush-hosts”,來解除此類阻斷。

在服務器啟動之前,您可以通過設置如下最大值,來處置連接中出現的錯誤:

  1. > mysqld_safe --max_connect_errors=10000  

當然,當服務器正在運行的時候,您也可以按照如下方式進行動態調整:

  1. mysql> SET GLOBAL max_connect_errors=10000;  

錯誤 5:內存不足

如果 MySQL 的內存不足,它將無法存儲來自 MySQL 客戶端的所有查詢請求,而且會在服務器端拋出如下的錯誤:

  1. mysql: Out of memory at line 42, 'malloc.c'   
  2. mysql: needed 8136 bytes (8k), memory in use: 12481367 bytes (12189k)   
  3. ERROR 2008: MySQL client ran out of memory  

為了解決此類問題,我們必須首先檢查查詢語句本身是否正確。例如:我們是否確實期望通過多行結果來回應某個查詢請求?

如果并非如此,則需要予以糾正、或是重新調整查詢的方式。如果請求本是正確的、且并不需要校正的話,我們可以選擇為 MySQL 添加一個 –quick 的選項。

錯誤 6:當出現“表已滿”時

表已滿(table-full)的錯誤一般發生在磁盤可用空間已滿、以及數據表已經到達了最大容量,這兩種情形之下。

我們往往可以通過操作系統的設置,來檢測并限制 MySQL 中的數據表作為單個文件的實際容量上限。

錯誤 7:當表 tbl_name 不存在時

如下錯誤表明了:在默認數據庫中,某個給定的數據表被視為不存在的情況。

  1. Table 'tbl_name' doesn't exist   
  2. Can't find file: 'tbl_name' (errno: 2)  

 

在此類情況下,用戶將無法正確地引用到其對應的數據表。

而導致該情況的原因在于:雖然 MySQL 服務器使用了目錄和文件的形式來存儲數據庫表,但是按照操作系統的文件管理方式,數據庫及其數據表的名稱是會區分大小寫的。

錯誤 8:各種不同步的命令

如果以錯誤的順序去調用客戶端的函數,那么您可能會接收到同步錯誤之類的命令。這就意味著該命令不能夠在客戶端的代碼中被執行。

例如,您要執行函數 --mysql_use_result()。與此同時,您又嘗試去執行另一個查詢 --mysql_free_result(),那么系統就有可能發生此類錯誤。

說白了,如果您要執行的兩個查詢,它們所返回結果集分別是各自調用函數的對方輸出結果(并非MySQL的存儲結果)的話,那么就會出現不同步的命令現象。

錯誤 9:忽略用戶

如果 MySQL 服務器在啟動、或重新加載某些授權表時,發現有個用戶表中的帳戶帶有非法密碼,那么就會出現如下的錯誤:

  1. Found the wrong password for user 'some_user'@'some_host'; ignoring user   

 

顯然,為了解決此類問題,我們應該為該用戶事先分配一個新的且有效密碼。

錯誤 10:無法創建/寫入文件

如下的錯誤表明:如果在執行請求的過程中,MySQL 不能在臨時目錄中,為某個結果集生成一個臨時文件:

  1. Can't create/write to file 'sqla3fe_0.ism'  

通常的解決方案是:在啟動 MySQL 服務器時,采用 –tmpdir 選項。其對應的命令如下:

  1. > mysqld --tmpdir C:/temp  

 

結論

眾所周知,在處理數據庫時,居多的問題和錯誤都源自查詢操作。上述十種 MySQL 的常見錯誤可能只是冰山的一角。

您可能也能羅列出更多實踐中碰到過的問題。希望上述線索和解決方案能夠對您有所幫助。

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2019-10-08 09:00:00

MySQL數據庫

2019-06-21 10:13:26

JavaScript錯誤開發

2019-07-25 08:08:33

SQLJavaMySQL

2015-03-19 11:53:57

JavaSQL數據庫開發

2025-06-12 03:55:00

項目處理異常代碼

2024-02-20 14:55:51

2020-05-29 14:30:35

Kubernetes開發錯誤

2018-01-11 16:29:19

錯誤HibernateJPQL

2020-05-25 16:09:17

蘋果iOSBug

2020-06-28 10:15:39

架構模式軟件

2017-09-14 09:30:38

軟件架構模式

2019-05-31 15:10:33

SQL數據庫MySQL

2022-10-19 23:18:27

KubernetesPod錯誤

2015-11-04 11:38:40

bug程序員

2014-03-11 11:33:21

2011-04-15 10:19:52

錯誤web開發web

2013-05-20 10:14:42

軟件工具項目工具開發工具

2024-08-20 11:40:24

2019-10-11 15:46:29

編程語言JavaJavaScript

2022-02-23 18:36:11

釣魚郵件數據泄露網絡攻擊
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产aⅴ | 亚洲第一av网站 | 成人一区二区视频 | 久久久国产一区二区三区四区小说 | 欧美中文字幕在线 | 亚洲成人在线视频播放 | 日韩精品激情 | 毛片视频网址 | 影音av | 国产91精品在线 | 久久久久久av| 超碰免费在 | 日韩精品福利 | 一区二区三区在线免费 | 亚洲精品久久久一区二区三区 | 国产精品国产精品 | 精品91av| 在线观看日韩精品视频 | 久久久激情 | 久久com| 亚洲精品视频在线播放 | 久久免费视频1 | 美女久久视频 | 欧美福利在线 | 欧美日韩国产高清视频 | 97人澡人人添人人爽欧美 | 国产精品国产成人国产三级 | aaaa网站| 成人精品啪啪欧美成 | 国产精品爱久久久久久久 | 日韩成人精品在线观看 | 欧美成人综合 | 又黄又爽的网站 | 国产免费一区 | 久草欧美 | 欧美色综合天天久久综合精品 | 亚洲天堂网站 | 国产一区二区三区高清 | 一区二区日本 | 欧美日日| 福利视频一区二区 |