database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 30556 게시물 읽기
No. 30556
innodb와myisam차이점
작성자
김성환
작성일
2013-02-20 09:23
조회수
10,486

요즘 innodb에 대해서 자료도 찾고 공부하는 중입니다.
myisam은 테이블락이고 innodb는 레코드락이라고 알고 있습니다.
트랙잭션과 트리거 쿼리는 전혀 없고 단순 insert,update,select 가 많이 일어나는 테이블입니다.
mysqladmin status 로 보면 초당 1500쿼리가 실행 됩니다.
동접은 초당 200명정도 됩니다.
만약 myisam테이블을 쓰면 하나의 레코드에 update가 일어날때 전체 테이블락이 걸려
순간 다른 레코드는 insert가 안되는 건가요?
innodb가 좀 무겁고 myisam이 좀 가볍다고 해서 굳이 트랜잭션과 트리거 같은 쿼리가 없고,
단순 select 와 insert,update만 있다면 myisam 으로 가고 싶은데...
myisam 테이블은 테이블락이라는게 걸리네요.
myisam 테이블 사용시 레코드가 엄청 많아서 update 가 좀 늦어졌을때 전체 테이블에 락이 걸려 다른
insert,update 쿼리가 늦어지지 않을까...?
인덱스가 걸려 있다면 하나의 레코드 update가 늦어질 경우는 없지만
만약에 늦어져서 테이블 전체에 락이 걸렸다면 엄청난 쿼리 딜레이가 일어날 것 같은데..
자료는 찾아 보는데 실제적으로 테스트 환경을 해보기가 힘들어서 조언을 부탁드립니다.
수고하세요.    

그리고 추가 적인 질문인데요.

mysql replication을 사용 중입니다.

master cpu사용량은 최대 2~3%인데 salve 15~20% 사용량을 보이네요.

master 에서는 insert,update,delete 를 하고 slave에서는 select만 하다가 부하가 걸려서 master로 70%정도 select 도 옮겼습니다.

slave에서는 30%의 select가 일어납니다.

수고하세요.

 

 

 

이 글에 대한 댓글이 총 1건 있습니다.

 실제 Lock으로 인한 지연이 발생하는지 모니터링해보시고, 발생하지 않는다면 그렇게 걱정할 필요는 없을 듯 합니다. 

테이블 Lock이라고 하더라도 update쿼리가 매우 단순할 경우 실행에 매우 짧은 시간이 걸리므로 실제 지연은 거의 없을 수도 있습니다.

 

말씀하신 것처럼 innodb가 트랜잭션 지원 등 기능이 많은 대신 myisam보다 무겁습니다. 따라서 lock 경합이 거의 없는데 innodb로 변경할 경우 오히려 성능 저하가 발생할 수 있습니다.

 

짐작으로 결정하지 마시고 반드시 실측해보세요. 

김주현님이 2013-05-04 12:54에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
30560mysqldump 문의 입니다. [2]
강삼수
2013-02-28
9696
30559두 기간 중복 날짜 비교 [4]
이한나
2013-02-27
11301
30558동접자 2만을 예상하고 있는데 DB 서버를 어떻게 구성해야 할지.. [7]
비됴
2013-02-26
11058
30556innodb와myisam차이점 [1]
김성환
2013-02-20
10486
30555안녕하십니까 프로그램때문에 뭐좀 여쭤보려고 합니다 [2]
꿈!
2013-02-15
8067
30554mysql replication 차이가 점점 벌어집니다.
설재형
2013-02-14
8246
30552mysql을 다른 무료 DB 로 변경하려 해요. [1]
새벽소리
2013-02-09
8854
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.027초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다