해피정

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

· 2017-08-22 (화) 02:27:51 · 7615 · 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/
정보 감사합니다.
감사합니다.
2017-08-31 (목) 14:33:28
정보 감사합니다.
감사합니다.
좋아요..잘쓰겠습니다.감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
17-09-19 조회 6,161
17-09-18 조회 8,414
17-09-14 조회 6,145
17-09-12 조회 8,099
17-09-11 조회 6,778
17-09-10 조회 6,226
17-09-07 조회 8,970
17-09-06 조회 7,559
17-09-04 조회 9,299
17-09-02 조회 7,873
17-08-28 조회 5,582
17-08-27 조회 1만
17-08-24 조회 1.3만
17-08-24 조회 5,084
17-08-22 조회 5,951
17-08-22 조회 6,721
17-08-22 조회 7,616
17-08-19 조회 9,020
17-08-18 조회 6,228
17-08-11 조회 5,449
17-08-11 조회 8,586
17-08-09 조회 7,649
17-08-07 조회 9,274
17-08-07 조회 1만
17-08-07 조회 7,010
17-08-04 조회 8,680
17-08-03 조회 7,727
17-08-02 조회 8,232
17-08-02 조회 5,194
17-08-02 조회 1.2만