首頁 > 資料庫 > mysql教程 > 如何解決 MySQL 錯誤 1118:「行大小太大」?

如何解決 MySQL 錯誤 1118:「行大小太大」?

Barbara Streisand
發布: 2025-01-01 08:42:13
原創
318 人瀏覽過

How to Solve MySQL Error 1118:

MySQL 行大小太大錯誤:解決1118 程式碼

建立包含大量列的MySQL 表時,您可能會遇到錯誤代碼1118:「行大小太大。」此錯誤表示列的組合大小超出了預設行格式所施加的限制。

了解行大小限制

在 MySQL 中,行大小限制會根據行格式而變化。預設行格式“緊湊”的大小限制為 8126 位元組。其他行格式(例如壓縮和動態)提供更大的限制。

最佳化列類型

要解決 1118 錯誤,請考慮最佳化列的資料類型。例如,用 TEXT 取代 VARCHAR 資料列可以顯著減少行大小。此外,考慮對大資料值使用 BLOB 或 LONG 類型。

啟用 Barracuda 檔案格式

MySQL 5.7 引入了 Barracuda 檔案格式,它提供了增強的效能和靈活性。啟用 Barracuda 可以透過允許更大的行儲存來緩解行大小問題。要啟用梭子魚,請將以下屬性新增至您的my.ini 檔案:

innodb_file_per_table=1
innodb_file_format=Barracuda
innodb_file_format_check = ON
登入後複製

停用嚴格模式

作為最後的手段,您可以嘗試停用嚴格模式對於MySQL。但是,這可能會讓您面臨潛在的資料損壞問題。若要停用嚴格模式,請將以下屬性新增至您的 my.ini 檔案:

innodb_strict_mode = 0
登入後複製

這將允許 MySQL 忽略記錄大小檢查並允許您建立具有更大行的表。

注意:修改伺服器參數(如 innodb_strict_mode)應謹慎進行,並且只有在考慮到資料的潛在風險和影響後才能進行。

以上是如何解決 MySQL 錯誤 1118:「行大小太大」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板