国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > MySQL > 正文

更新text字段時(shí)出現(xiàn)Row size too large報(bào)錯(cuò)應(yīng)付措施

2024-07-24 12:41:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
起因:  團(tuán)購(gòu)開(kāi)發(fā)報(bào)告說(shuō)更新時(shí)出錯(cuò)。    更新SQL如下:  復(fù)制代碼 代碼如下:     UPDATE table_name d SET d.column_name='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'  WHERE d.ID=100976;      報(bào)錯(cuò)信息如下:  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類型。    個(gè)人之前理解是:  TEXT的內(nèi)容在 Dynamic的table format下是存在off-page中的,不會(huì)占用row size的計(jì)算。  Barracuda 對(duì)應(yīng)row_format ( dynamic, compress) ,其中dynamic下text的所有內(nèi)容都是off-page存放的 (點(diǎn)擊查看)  Antelope 對(duì)應(yīng)row_format (compact, redundant),其中compact下的text是存786B在row中,超過(guò)部分存在off-page  而服務(wù)器配置是 innodb_file_format = Barracuda  照理說(shuō)所有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.  也就是說(shuō),建表時(shí)不顯示指定 row_format = dynamic ,即使 innodb_file_format = Barracuda 表的row-format還是 compact    所以總結(jié)為一句話就是:如果某個(gè)表的text字段很多建議建表時(shí)加上 row_format = dynamic  當(dāng)然,回過(guò)頭來(lái)MySQL的報(bào)錯(cuò)也是有誤導(dǎo)性的,bug庫(kù)中也對(duì)confirm了這個(gè)bug(點(diǎn)擊查看),并在5.1.61中優(yōu)化了報(bào)錯(cuò)提示。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 云浮市| 游戏| 九龙城区| 阿拉善右旗| 昭苏县| 图片| 九江县| 白玉县| 涟水县| 邵东县| 罗城| 米易县| 平遥县| 麦盖提县| 汉寿县| 拉萨市| 南郑县| 汾阳市| 任丘市| 永寿县| 攀枝花市| 婺源县| 深州市| 郯城县| 柳江县| 蓬莱市| 常山县| 乌鲁木齐县| 陆丰市| 专栏| 泌阳县| 武汉市| 沙坪坝区| 久治县| 崇阳县| 克什克腾旗| 讷河市| 诸城市| 大余县| 通许县| 平顶山市|