MyISAM or innodb 디비문제..ㅠㅠ
본문
MyISAM 디비로 그누보드를 사용하다 잦은 테이블 '사용중' 에러로 innodb로 변경하고 사용중입니다.
innodb변경후에는 테이블 '사용중'에러는 발생하지 않는데..
문제는 MyISAM 에서 백업 받으면 200메가정도되는 디비인데
innodb로 변경후 업로드하면 거의 2기가 이상으로 용량을 잡아먹는 문제가 있습니다.
혹시나해서 innodb로 업로드한 디비를 다시 백업받으면 200mb 정도인데..
이부분은 어쩔수 없는 부분인가요?
혹 innodb에서도 용량을 적게 설정할수 있는 방법이 있는지 문의드립니다.
-------------------
기타.
윈도우 서버에서 xampp 로 그누보드를 이용중인데요.
테이블 '사용중' 에러의 원인이 mysql root 비번 변경 혹은 사용자 추가후 비번변경시
mysql / mysql 디비쪽에 문제가 있다는 글을 본거같은데
원천적으로 해결할 수 있는 방법이 있을까요?
phpmyadmin 에서 비번을 변경해서 테이블에 글을 쓰고 지우고할때 권한문제(?)로 발생하는 문제인지...
혹시 아시는분 조언좀 부탁드립니다.
답변 1
글쎄요. '사용중' 이라는 메세지가 어디서 출력되는지는 모르겠지만
커스텀 안된 기본 그누보드5 나 mysql 에서 내보내는 메세지 같지는 않습니다.
아니면 xampp 에 있는걸까요?
InnoDB 는 트랜잭션을 위한 엔진이고 MyISAM 엔진은 그것이 아닌만큼
동시성 보장을 위해 유사한 상황을 감지해서 임의로 어디에선가 메세지를 뿌려주는 것이라 예상해봅니다.
그리고 그게 맞다면 다시 돌고돌아 해당 기능을 mysql 차원에서 처리할수 있는게 InnoDB 엔진 입니다.
용량 같은 경우는 다운받은 상태의 로컬 .sql 파일과 어떤 부분을 비교를 하신건가요?
기본적으로 mysql 데이터 파일인 .frm, .ibd 등등 파일 디렉토리 쪽의 총 용량은
로컬 .sql 파일과 같을수가 없고, mysql 관리하에 엔진타입에 따른 추가 필요기능들을 부여하면서
크기가 더 커진다고 보는게 맞습니다.
그누보드5 초기 설치상태에서 글 2~3개 작성 후 db 의 sql 을 export 해보니
해당 sql 파일은 118074 바이트가 나오지만
실제 mysql server 의 data 디렉토리의 db 디렉토리쪽의 파일들의 용량 합은 7671499 가 나옵니다.
InnoDB 엔진이 MyISAM 보다 하는일이 많기 때문에 성능은 상대적으로 조금 떨어집니다만
그만큼 안정성을 보장하기 때문에 특수한 용도가 아닌이상
용량에 대한 부분을 이해하고 그대로 InnoDB 를 사용하는게 낫지 않나 생각됩니다.