이윰빌더 설치 파일에 DB 변환 코드 추가 요청
k9400275
58.♡.141.95
2022-09-24 05:07
10,303
1
본문
초기 설치하는 setup_db.php 의 경우 그누보드(영카트)의 파트와 이윰빌더 파트가 있는데,
그누보드의 경우 MyISAM과 InnoDB 테이블 변환을 위한 함수가 추가되어 있습니다.
이윰빌더는 이 함수를 호출하지 않고 테이블을 생성하는데, 이 상태로 설치를 진행한 경우
그누보드 테이블은 InnoDB로 이윰빌더 추가 테이블은 MyISAM 형태로 테이블이 생성됩니다.
db가 innodb를 지원하는 경우나 설정에서 지정한 경우
get_db_create_replace() 함수를 통해 테이블 생성 schema에서 ENGINE=MyISAM 을
ENGINE=innodb로 변경 또는 삭제하게 됩니다.(삭제된 경우 default engine 을 사용함)
코드는 두군데 4줄을 아래와 같이 수정하면 정상 처리됩니다.
1. setup_db.php 1026번 라인
기존코드
sql_query($f[$i], false, $dblink) or die(mysqli_error());
수정된 코드
$sql = get_db_create_replace($f[$i]);
sql_query($sql, false, $dblink) or die(mysqli_error());
2. setup_db.php 1042번 라인
기존코드
sql_query($f[$i], false, $dblink) or die(mysqli_error());
수정된 코드
$sql = get_db_create_replace($f[$i]);
sql_query($sql, false, $dblink) or die(mysqli_error());
mysql8.0에서는 charset 과 collation 에 내용이 크게 변경되어, 잘못지정되거나 타입이 다른 경우 쿼리가 정상 실행되지 않거나, 결과가 다르게 노출되는 경우가 발생할수 있습니다.
가급적 위의 코드로 패치하시길 바랍니다.
댓글목록1
NPIO님의 댓글
검토해서 다음 버전 이윰빌더에 패치하여 적용해 놓도록 하겠습니다.
감사합니다.
축하합니다. 첫댓글 포인트 25포인트를 획득하였습니다.