欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

更新text字段時出現(xiàn)Row size too large報錯應付措施

 更新時間:2013年03月06日 16:14:22   作者:  
個人建議:表的text字段很多建議建表時加上 row_format = dynamic當然,回過頭來MySQL的報錯也是有誤導性的,感興趣的你可以參考下本文
起因
團購開發(fā)報告說更新時出錯。

更新SQL如下
復制代碼 代碼如下:

UPDATE table_name d SET d.column_name='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
WHERE d.ID=100976;

報錯信息如下
Error Code : 1118
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs
疑惑
更新字段只涉及 column_name字段,且該字段是TEXT類型。

個人之前理解是
TEXT的內(nèi)容在 Dynamic的table format下是存在off-page中的,不會占用row size的計算。
Barracuda 對應row_format ( dynamic, compress) ,其中dynamic下text的所有內(nèi)容都是off-page存放的 (點擊查看)
Antelope 對應row_format (compact, redundant),其中compact下的text是存786B在row中,超過部分存在off-page
而服務器配置是 innodb_file_format = Barracuda
照理說所有table用的都是 dynamic 結(jié)構(gòu)。
但是! 原因如下,摘自文檔:
To preserve compatibility with those prior versions, tables created with the InnoDB Plugin use the prefix format, unless one of ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED is specified (or implied) on the CREATE TABLE command.
也就是說,建表時不顯示指定 row_format = dynamic ,即使 innodb_file_format = Barracuda 表的row-format還是 compact

所以總結(jié)為一句話就是:如果某個表的text字段很多建議建表時加上 row_format = dynamic
當然,回過頭來MySQL的報錯也是有誤導性的,bug庫中也對confirm了這個bug(點擊查看),并在5.1.61中優(yōu)化了報錯提示。

相關(guān)文章

  • MySQL的安裝與配置詳細教程

    MySQL的安裝與配置詳細教程

    MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用的,本文主要以Mysql免安裝版為例,幫助大家解決安裝與配置mysql的步驟
    2021-06-06
  • mysql+Spring數(shù)據(jù)庫隔離級別與性能分析

    mysql+Spring數(shù)據(jù)庫隔離級別與性能分析

    數(shù)據(jù)庫隔離級別與Spring配置事務的聯(lián)系及性能影響,以下是個人理解,如果有瑕疵請及時指正
    2014-05-05
  • 使用JDBC從數(shù)據(jù)庫中查詢數(shù)據(jù)的方法

    使用JDBC從數(shù)據(jù)庫中查詢數(shù)據(jù)的方法

    下面小編就為大家?guī)硪黄褂肑DBC從數(shù)據(jù)庫中查詢數(shù)據(jù)的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • mysql存儲過程原理與用法詳解

    mysql存儲過程原理與用法詳解

    這篇文章主要介紹了mysql存儲過程,結(jié)合圖文與實例形式較為詳細的分析了mysql存儲過程基本概念、原理、用法及相關(guān)操作注意事項,需要的朋友可以參考下
    2020-04-04
  • 解讀mysql主從配置及其原理分析(Master-Slave)

    解讀mysql主從配置及其原理分析(Master-Slave)

    在windows下配置的,后面會在Linux下配置進行測試,需要配置mysql數(shù)據(jù)庫同步的朋友可以參考下。
    2011-05-05
  • MySQL 數(shù)據(jù)查重、去重的實現(xiàn)語句

    MySQL 數(shù)據(jù)查重、去重的實現(xiàn)語句

    這篇文章主要介紹了MySQL 數(shù)據(jù)查重、去重的實現(xiàn)語句,幫助大家更好的理解和學習MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-09-09
  • sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實現(xiàn)解析

    sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實現(xiàn)解析

    這篇文章主要介紹了sql腳本函數(shù)編寫postgresql數(shù)據(jù)庫實現(xiàn)解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • Ubuntu中更改MySQL數(shù)據(jù)庫文件目錄的方法

    Ubuntu中更改MySQL數(shù)據(jù)庫文件目錄的方法

    這篇文章主要給大家介紹了關(guān)于在Ubuntu中更改MySQL數(shù)據(jù)庫文件目錄的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-11-11
  • MYSQL配置參數(shù)優(yōu)化詳解

    MYSQL配置參數(shù)優(yōu)化詳解

    MySQL是優(yōu)化難度最大的一個部分,不但需要理解一些MySQL專業(yè)知識,同時還需要長時間的觀察統(tǒng)計并且根據(jù)經(jīng)驗 進行判斷,然后設置合理的參數(shù)。下面我們了解一下MySQL優(yōu)化的一些基礎
    2018-07-07
  • MySQL數(shù)據(jù)庫的索引原理與慢SQL優(yōu)化的5大原則

    MySQL數(shù)據(jù)庫的索引原理與慢SQL優(yōu)化的5大原則

    這篇文章主要介紹了MySQL數(shù)據(jù)庫的索引原理與慢SQL優(yōu)化的5大原則,包括:建立索引的原則,慢查詢優(yōu)化基本步驟,慢查詢優(yōu)化案例,explain使用,需要的朋友可以參考下
    2023-02-02

最新評論