그누보드 환경설정 g5_config 테이블에 컬럼 추가 에러
페이지 정보
본문
#1118 - Row size too large.
The maximum row size for the used table type, not counting BLOBs, is 65535.
This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
1118 : 행 크기가 너무 큽니다. BLOB를 제외하고 사용된 테이블 유형의 최대 행 크기는 65535입니다.
여기에는 스토리지 오버헤드가 포함됩니다. 매뉴얼을 확인하십시오. 일부 열을 TEXT 또는 BLOB로 변경해야 합니다.
그누보드5 환경설정 디비 테이블에 컬럼을 추가하려고 합니다
phpMyAdmin 에서도 php 페이지에서 컬럼 추가를 진행하면 size error 가 있다면서 등록에 실패합니다
그누보드5 의 환경설정 테이블의 varchar 필드로 설정된 값을 합해보니 21,610 의 값이 나오는군요.
MySQL 은 하나의 테이블에 최대 4,096 개의 컬럼을 가질 수 있으며 row 사이즈는 65,535 bytes 로 제한이라고 하는데 말이죠
varchar 1 x 3 = row 로 되는건가 싶어서 계산해보니 65535 / 3 = 21,845 라는 값이 나오는걸 보면 이건가 싶습니다
그누보드5에 여러가지 기능이 추가되면서 환경설정에 다양한 필드가 추가되고 그로인해 제한이 걸리는 상황이 된듯 합니다
앞으로 업데이트에 어떻게 대처를 해야할지 SIR 의 고민이 필요한 상황이 아닐까 생각됩니다
mysql ( MariaDB ) 등이 계속 업데이트 되면서 이것의 제한이 변경되면 해결될 일이기는 하지만 ...
제가 취한 해결방법은 varchar(255) 로 선언된 다수의 필드를 varchar(100) 또는 varchar(50) 으로 변경했습니다
데이타 저장을 생각해보면 줄여도 문제 안되는 많은 필드가 큰 고민없이 varchar(255) 로 사용되는건 아닌가 생각이 듭니다
상황에 맞는 필드 타입과 값을 사용하는것이 중요하다는 것을 깨닫게 되었습니다
참고자료
https://www.lesstif.com/dbms/mysql-error-1118-42000-row-size-too-large-80249028.html
댓글목록
등록된 댓글이 없습니다.