654
yesterday 772
visitor 23,540,498
10

[mysql] myisam 과 innodb 뭐가 좋을까?

조회 수 24057 추천 수 0 2015.05.19 14:13:32

mysql 아마 무료 디비이고 성능이나 기능도 훌륭해서 전세계에서 가장 많이 쓰는 DBMS중에 하나일것이다.


mysql 에서 가장 대표적인 스토리지 엔진이 바로 이 myisam과 innodb인데 사람들은 어떤어떤 서비스를
할껀데 어떤 디비를 사용하는것이 좋을까요? 라고 많이 물어보시더라...

일단 그전에 각 스토리지 엔진의 특성을 살펴보자

1. myisam

장점...
mysql의 대표적인 스토리지 엔진 이며
장점은  select 시 빠르며 풀텍스트 인덱스를 지원한다.
항상 테이블 명세에 row count를 가지고 있기 때문에
select count(*) from TABLE 이런식의 명령을 사용할때 엄청 빠르다.

단점...
뭐 수도 없이 많은데. 가장 큰것은 역시... row level locking 을 지원하지 못한다는것.
select, insert, modify, delete 시 해당 Table 전체에 Locking 이 걸린다.
따라서 row의 수가 커지면 커질수록 속도는 엄청나게 느려진다.

또한 트랜젝션을 지원하지 못하기 때문에 delete update 잘못하면 ... 백업이 없다면 걍 끝..

2. innodb

장점...
트랜젝션 지원
row level Locking 지원 (ms-sql 의 경우도 마찮가지로 row level Locking 을 지원하지만 한 테이블에 locking이 많아질경우 Lock Escalation 즉 테이블 전체에 락이 걸리는 경우가 있는데 mysql innodb에서는 그런 현상이 없다)

단점...
풀텍스트 인덱스를 지원못함
약간 느린속도? (이건 뒤에서 추가 설명)
테이블의 row수의 정보를 가지고 있지 않기 때문에 select count(*) from TABLE 이런식의 명령을 내릴때
innodb_buffer_pool 에 해당 테이블의 인덱스 정보가 모두 들어가 있지 않다면 다시 스토리지 엔진은 하나하나
수를 계산해서 결과를 보여주기 때문에 엄청 느리다.. (단 인덱스 컬럼으로 where 조건을 주어 count 를 하면 myisam 과 동일한 속도)




이정도가 있겠다.

자 이제 어떤 스토리지 엔진을 선택할까?

물론 정답은 자기 원하는바로 -_- 하면.. ㅋㅋ

음..

일단 myisam 은 count 에 유리하다고 했다. 따라서 분석을 요하는 로그 파일 저장에 유리하며.
innodb 는 일반적인 게시판 쇼핑몰등 트랜젝션이 필요하고 또한 한꺼번에 많은 사용자가 동시에 쿼리를
날려도 TABLE Locking 이 발생하지 않기때문에 유리하다.

뭐 그냥 개인 홈페이지나 블로그 같은 작은 것들은 걍 귀찮으니 암거나 써도 무방하다.


그리고 innodb 가 속도가 느리네 어쩌네 하는데 mysql 이 버전업을 거듭하면서
최근 BM을 보면 이미 myisam 을 추월했다.(속도로)


그리고 용도에 따라 스토리지 엔진을 결정하는데 myisam 과 innodb테이블을 같이 사용할경우 join시 주의해야
한다.

myisam 테이블은 모든 액션에 table locking 이 걸리기 때문에 심각하게 속도가 떨어진다.


[출처] : http://www.lscript.co.kr/67 [일이의 꿈의 공간]

 

 

'헬로마켓'과 함께하는 스마트한 중고 아이템 거래

https://www.hellomarket.com


1
profile

Lisa

June 04, 2022
*.204.224.6

Jordan Retro Golden Goose Shoes Women New Nike Shoes Red Bottom Shoes Moncler Jacket Moncler Vest Pandora Jewelry Jordans Retro Golden Goose Sneakers Soccer Shoes Nike Shoes For Women Jordan 6 Retro Cheap Jordan Shoes For Women Jordan 11 Red Jordan Retro 5 Pandora Jewelry Jordan Retros Jordan 8 Air Jordan Shoes Pandora Bracelets Golden Goose Mid Stars Jordan Retro 9 Air Jordan Pandora Rings Official Site Jordan Retro 12 Jordan 13s Jordans 4 Nike Outlet Store Online Shopping Moncler Outlet Air Jordan 4 GGDB Sneaker Jordans 11 Air Max 95 Nike Shoes Golden Goose Outlets Air Jordan Sneakers GGDB Sneakers Red Bottoms Nike Huarache Pandora Jewelry Official Site Pandora Jewelry Air Max 2018 Nike Official Ferragamo Outlet Yeezy Shoes Pandora Ring Moncler Pandora Charms Jordan 11 Cheap Jordans Jordan 1 Retro Nike Shoes For Men Jordan 3 Golden Goose Sneakers Women Moncler ECCO Shoes For Men Nike Outlet Store Air Jordan Sneakers Valentino Sneakers Jordan Retro 10 Jordan Shoes Nike Air Force 1 Adidas NMD Jordan Retro 11 Nike Outlet Store Air Force 1 Air Jordans Ferragamo Adidas NMD Jordan 12 Triple S Balenciaga Louboutin shoes Jordan Retro 12 Retro Jordans Jordan Retro 11 Jordan 5s Jordan 14 Jordan Retro 12 Jordan 6 Rings Pandora Jordan 11 Win Like 96 Jordan 11 Low Golden Gooses For Sale Fitflops Clearance Outlet Pandora Jewelry Air Jordan 5 Outlet Moncler Louboutin Shoes Air Max 270 Jordan 11s Balenciaga Shoes Nike Factory Outlet Women Nike Jackets Moncler Air Jordan 11 Men's Nike Shoes Red Bottom Shoes GGDB Shoes Golden Goose Outlet Pandora Charms Jordan Retro 11 Golden Goose Sneakers Hermes Birkin Bag Yeezy Shoes Nike Kyrie Irving Shoes Yeezy Jordan 3 Retro Air Jordan 11 Yeezy Shoes New Jordans 2018 Jordan Retro 4 Air Jordan 4 Pandora Charms Sale Clearance Yeezy Adidas Yeezy Jordan Retro 6 Snkrs Nike Nike Factory Jordans Sneakers James Harden Shoes Air Max 98 Nike Air Max Moncler Jackets Golden Goose For Sale Fitflop Shoes Harden vol 1 Fjallraven Kanken Nike Sale Jordan 11's Air Jordan Jordans Sneakers Moncler Jackets Air Jordans Air Max 90 Jordans 2021 Pandora
문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
10 MySQL 소수점 이하 0일때 제거 [1] 제리 2021-08-13 9079
9 mysql 한글 설정 제리 2019-07-18 25097
8 mysql 유저생성, 권한 제리 2017-04-25 18768
7 mysql 덤프 명령및 오류 제리 2015-11-26 101254
6 mysql 컬럼 추가 [1] 제리 2015-07-09 49477
» [mysql] myisam 과 innodb 뭐가 좋을까? [1] 제리 2015-05-19 24057
4 오토커밋(autocommit) 상태 확인하기 [1] 제리 2014-11-07 14216
3 My Sql 함수정리 제리 2012-08-29 63240
2 mysql 형변환 [2] 제리 2012-08-02 19901
1 mysql 문자열 함수 [3] 제리 2011-12-16 18752

Program Note 로그인 :)