질문/조언팁/리소스 공유

이번에 아이비호스팅에 라이믹스 설치를 진행하면서 (apache php7.0 마리아DB환경) 겪은 내용입니다.

 

설치 세팅 하려는 도중 아래와 같은 에러를 뿜으면서 설치가 불가능한데요

 Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes

 

이경우엔 DB가 innoDB를 지원하지 않기에 키값 길이에대한 제한에 걸려서 나오는 문제라고 하더군요

 

일단 이것을 해결하려면... XE를 설치해야합니다

기억하기론 예전에 XE는 innodb가 되지않는 환경을 위해 myisam형식을 지원(mysql  ,mysqli등)하기에

이 환경에서도 XE는 사용할 수 있을거란 생각이 들었기 때문입니다.

 

그렇다면?

XE를 설치하고 라이믹스로 넘어가면 되는일이죠 그럼 DB는 그대로 라이믹스가 승계하여 사용할것이기에

아무문제가 없을겁니다.

 

해서 XE최신버전(지원이 끊겼지만..) 설치 및 세팅을 완료 한후

관리자페이지까지 진입에 성공하셨다면

 

라이믹스를 덮어쓴 후 불필요한 파일들을 삭제하고

들어가서 캐시파일 재생성 및 DB 생성처리하면 사용이 가능합니다~!

 

호스팅을 바꿀까도 생각했으나... 고객의 요청이 있기에 바꿀수가없어 이런 방법을 생각했네요 ㅎ

혹여 필요하신분께 도움이 되시길 바랍니다.

 

추후에는 라이믹스가 지원해줬으면 좋겠네요.

  • profile
    https://github.com/rhymix/rhymix/blob/master/modules/install/install.controller.php#L60-L77

    이미 InnoDB를 지원하지 않는 경우 MyISAM을 사용하도록 구성되어 있습니다. 즉 innodb 문제는 아닙니다.
  • profile ?
    구성되어 있다면.. 이 문제가 왜 일어날까요.
    저 호스팅에서는 이 방법으로 해결은 했습니다.

    결국 XE는 아무문제없이 설치 진행이 가능했고
    라이믹스는 2.0.0.4 그리고 개발버전(최신)둘다 덮어씌면 문제없이 넘어가더라구요.

    해당문제는 아니라니 수정해야겠네요 ㅎ
  • profile
    modules/counter/schemas/counter_log.xml 에서 ipaddress 컬럼의 길이를 250자로 지나치게 길게 지정해 놓아서 생기는 문제인 듯 합니다. utf8mb4에서 250자는 최대 1000바이트인데, 앞에 있는 site_srl까지 포함하는 복합인덱스를 만들려고 하면 1000바이트를 넘어가 버리지요.

    IPv4 주소는 15자, IPv6 주소는 최악의 경우에도 45자를 넘어가지 않습니다. IP 주소를 저장하는 컬럼의 길이도 50~60자면 충분한데, 예전에는 별 생각 없이 길게 지정했었나 봐요.
  • profile profile
    https://xetown.com/questions/1512842

    패치된 2.0.5 에서도 동일한 현상이 있나봅니다. 동일한 호스팅 회사네요.