테스트 사이트 - 개발 중인 베타 버전입니다

그누보드 utf8mb4 설치하기 (2021-06-16 18:19 수정)

· 8년 전 · 5963 · 8

2017-08-22  새로운 정보가 확인되어 팁을 수정했습니다.
2021-06-16  adm / dbupgrade.php 에 수정사항 추가
2021-06-16  그누보드(영카드) 5.4.5.1 기준


그누보드5를 utf8bm4 형식으로 설치하는 방법입니다.
ENGINE=MyISAM   를   ENGINE=InnoDB   로 변경은  하지 않아도 utf8mb4 설치가 가능합니다.

1-1. 그누보드5 / config.php  35줄
define('G5_DB_ENGINE', '');

를 아래와 같이 변경

define('G5_DB_ENGINE', 'InnoDB');
if (G5_DB_ENGINE == '') {
    define('G5_DB_ENGINE', 'MyISAM');
}


1-2. 그누보드5 / config.php  42줄
define('G5_DB_CHARSET', 'utf8');  를
define('G5_DB_CHARSET', 'utf8mb4');  로 변경


2. 영카트5 / orderupgrade.php  64줄 , 82줄 , 133줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


3-1. 그누보드5 / adm / config_form.php  61줄 , 80줄
) ", false);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", false);  로 변경


3-2. 그누보드5 / adm / config_form.php  115줄 , 253줄
) ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


4. 그누보드5 / adm / contentlist.php  24줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


5-1. 그누보드5 / adm / dbupgrade.php  72줄
) ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


5-2. 그누보드5 / adm / dbupgrade.php  192줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8;", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


6. 그누보드5 / adm / faqmasterlist.php  24줄 , 43줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


7. 그누보드5 / adm / menu_list.php  24줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


8. 그누보드5 / adm / newwinlist.php  31줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


9. 그누보드5 / adm / qa_config.php  49줄 , 80줄
) ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


10. 그누보드5 / adm / sql_write.sql
ENGINE=MyISAM   를   ENGINE=InnoDB   로 변경
CHARSET=utf8   를   CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC   로 변경


11. 영카트5 / adm / shop_admin / configform.php  181줄 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


12. 영카트5 / adm / shop_admin / itemstocksms.php  24줄 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", true);  로 변경


13. 그누보드5 / adm / sms_admin / sms5.sql
ENGINE=MyISAM   를   ENGINE=InnoDB   로 변경
CHARSET=utf8   를   CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC   로 변경


14. 그누보드5 / install / gnuboard5.sql
ENGINE=MyISAM  를  ENGINE=InnoDB  로 변경
CHARSET=utf8   를   CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC   로 변경


15. 영카트5 / install / gnuboard5shop.sql
CHARSET=utf8   를   CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC   로 변경


16. 그누보드5 / install / install_db.php  78줄  ( 5.0~5.3.3.3  /  5.4 적용 )
sql_set_charset('utf8', $dblink);   를   sql_set_charset(G5_DB_CHARSET, $dblink);   로 변경


17. 그누보드5 / lib / common.lib.php  1820줄
$schema_create .= $crlf . ') ENGINE=MyISAM DEFAULT CHARSET=utf8';  를
$schema_create .= $crlf . ") ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ";  로 변경


18. 영카트5 / lib / shop.lib.php  2681줄
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ", true);  를
) ENGINE=".G5_DB_ENGINE." DEFAULT CHARSET=".G5_DB_CHARSET." ", false);  로 변경


19. 그누보드5 / common.php  159줄  ( 5.0~5.3.3.3  /  5.4 적용 )
sql_set_charset('utf8', $connect_db);   를   sql_set_charset(G5_DB_CHARSET, $connect_db);   로 변경




여기부터 아미나빌더 관련 수정사항
https://www.happyjung.com/lecture/2504


참고자료
https://stackoverflow.com/questions/1814532/1071-specified-key-was-too-long-max-key-length-is-767-bytes 
http://ojava.tistory.com/25 
http://www.popit.kr/mysql-index-column-size-too-large-error/ 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 8개

유용한 정보 감사합니다
감사합니다. ^^
CHARSET=utf8 를 CHARSET=utf8mb4 로 변경
을 아래와 같이 변경하였습니다.
CHARSET=utf8 를 CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC 로 변경

참고자료 http://www.popit.kr/mysql-index-column-size-too-large-error/
정보 감사합니다.
감사합니다.
8년 전
정보 감사합니다.
감사합니다.
좋아요..잘쓰겠습니다.감사합니다.

게시글 목록

번호 제목
24318
24317
24315
24309
24294
24293
24277
24262
24260
24253
24251
24236
24233
24228
24226
24221
24214
24203
24201
24199
24196
24195
24194
24192
24191
24187
24185
24183
24172
24168