mysql 이 cpu 를 꾸준히 먹습니다.
글쓴이: 망치 / 작성시간: 수, 2006/02/15 - 8:07오후
혹시나 refresh 공격인가 싶어서 로그를 살펴봐도 그건 아닌데, top 으로 확인할때 cpu 를 mysql 이 계속 잡아먹고 있습니다..
누군가 의도적으로 공격을 하고 있는것같긴 한데 사이트의 어느부분에서 어떤 쿼리로 DB 를 계속 빡시게 돌게 하고 있는건지 파악이 힘듭니다..
어떻게 추적해야 하는건가요?;; :? :?
Forums:
mysql 에 던져진 최근 쿼리중 cpu 타임을 오래 잡아먹은 걸 추려낼
mysql 에 던져진 최근 쿼리중 cpu 타임을 오래 잡아먹은 걸 추려낼 수 있는 방법이 있으면 추적이 간단해질것같은데.. 방법이 있나요..?
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
로그를 기록되게 변경해서 로그 분석을 해보세요..
로그를 기록되게 변경해서 로그 분석을 해보세요..
----
웹페이지 : http://bzpalm.net/
slow query 를 로그 남기는 방법이 있겠구요.http://
slow query 를 로그 남기는 방법이 있겠구요.
http://dev.mysql.com/doc/refman/5.0/en/slow-query-log.html
좀 오래된 툴이지만, mytop 으로 실시간 감시를 해 보는 방법도.
http://jeremy.zawodny.com/mysql/mytop/
slow query 갯수가 너무 많아 로그 읽기가 힘들다면?mys
slow query 갯수가 너무 많아 로그 읽기가 힘들다면?
mysql_slow_log_parser
http://retards.org/projects/mysql/
감사합니다.slow-query 를 기록하게 설정해두고 DB 를 재
감사합니다.
slow-query 를 기록하게 설정해두고 DB 를 재시작하고 로그가 쌓이길 기다리고 있습니다. 그리고.. mytop 은 설치중 문제가 생겼습니다..;
* DBI and DBD::mysql
* Term::ReadKey from CPAN
요게 없어서 생기는 문제같습니다. 따로 설치해야하는군요.. slow-query 로그 쌓이는거 보고 mytop 도 실행되게 만들어서 좀 봐야ㅤㄱㅖㅆ습니다.
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
[code:1]/usr/local/mysql/libexec/mysqld
/usr/local/mysql/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/home/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-locking --port=3306 --socket=/tmp/mysql.sock --log-slow-queries=/var/log/mysql_slow.log
mysql 실행시 위와같이 슬로우쿼리 옵션을 추가해 주고 long query time 을 1 로 지정해주었는데, 이상하게 슬로우 쿼리 로그가 남질 않습니다. 직접 1초가 넘게 걸리는 쿼리를 만들어서 날려보기도 했는데 안남는군요.. 뭘 빠뜨린건가요? :? :?
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
mysqladmin -i5 status 명령으로 5초 간격으로 모니터링을
mysqladmin -i5 status 명령으로 5초 간격으로 모니터링을 해보세요.
슬로우 쿼리 문제가 아닐수도 있습니다.
아니면 --log 옵션을 주어서 모든 쿼리문을 로그로 남긴후 분석해보시길 바랍니다. 30분~1시간정도면 충분할듯 하네요.. 그이상은 로그파일의 용량이 비대해지기 때문에... 8)
----
웹페이지 : http://bzpalm.net/
[code:1]Uptime: 15561 Threads:
status 에선 슬로우 쿼리가 분명히 표시가 되는데.. 희한하네요. 왜 슬로쿼리 로그엔 안남을까요 ㅡㅡ;;;
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
/usr/local/mysq/var 디렉토리에 슬로우 쿼리 로그가 남지
/usr/local/mysq/var 디렉토리에 슬로우 쿼리 로그가 남지 않았나 싶습니다.. 8)
----
웹페이지 : http://bzpalm.net/
[quote="평양선봉"]/usr/local/mysq/var 디렉토리에
요건 아니구요. 실행 스크립트에 옵션으로 넣지않고 바로 my.cnf 에 넣었더니 로그가 기록되기 시작했습니다.
그런데 query cache size 를 my.cnf 내에서 지정해주려면 어떻게 넣어줘야 하나요? 위에 슬로쿼리로그처럼 그냥 써 넣었더니 에러가 나더군요.. 대쉬와 밑줄의 차이인가 싶어서 바꿔봐도 똑같은 에러가 나구요. 결국 직접 mysql 실행해서 지정해주는데.. my.cnf 에서 지정하려면 어떻게 써줘야 하는지 궁금합니다.
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
my.cnf 파일에..set-variable = query_cac
my.cnf 파일에..
set-variable = query_cache_size = xxM
의 형식으로 작성해 보세요..
mysql은 볼수록 방대하고 깊네요.. 8)
----
웹페이지 : http://bzpalm.net/
사이트내에서 그누보드3와 제로보드를 같이 쓰고 있는데, 제로보드쪽엔 아직
사이트내에서 그누보드3와 제로보드를 같이 쓰고 있는데, 제로보드쪽엔 아직 게시물이 많지 않고 그누보드3쪽에 게시물이 28만건정도 있는데.. 여기서 슬로우 쿼리가 많이 생기네요..
마지막페이지나 좀 오래된 페이지로 넘어갈경우 글 목록을 표시하는 쿼리만 4~6초씩 걸리네요.. 그동안 mysql 99% 먹어버리구요 ㅡ.,ㅡ; 딱히 누가 공격한것같진 않고.. 좀 오래된 페이지에서 글 보느라 왔다갔다 한것같은데.. 그 리소스 먹는게 거의 테러수준으로 보인것같습니다..
그누보드는 이래저래 많은사람이 사용하는 사이트에선 어울리질 않는것같습니다.. 글이 몰릴경우 글 번호가 없는 글이 생긴다거나.. 그렇게 번호 없는 글이 생겼을경우 답글이 이상한곳에 달린다거나 하는 문제도 있더군요..
뭐.. 게시물 수 늘어나면 어떤 게시판이건 느려지는건 마찬가지겠지만 -_-;..
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
회사에서 서비스해주는 쇼핑몰 사이트가 JSP+MySQL 이었는데..어
회사에서 서비스해주는 쇼핑몰 사이트가 JSP+MySQL 이었는데..
어느날 계속 MySQL의 쓰레드가 80여개 이상으로 생기면서 죽는 현상이 있었습니다.
슬로우 쿼리 문제라 생각했는데.. 슬로우 쿼리는 아니고..
mysql 셋팅에서 wait_time 과 thread_cach_size 옵션을 적용해주니 문제가 해결 되었습니다.
야메... :lol:
한 table에 28만건이면.. 어마하네요..
글쓰기 금지하고, 새 테이블로 만드셔야 할거 같습니다..
----
웹페이지 : http://bzpalm.net/
일단 게시판을 리셋하고 새로운 테이블에서 새 게시판이 시작됐습니다.
일단 게시판을 리셋하고 새로운 테이블에서 새 게시판이 시작됐습니다.
게시물이 늘어나면 또 속도가 떨어질텐데.. 뭔가 대안이 필요합니다. ㅡ.,ㅡ; 게시물이 늘어나도 속도가 심하게 느려지지 않을 비법.. 같은게 있을까요!!! -_-;;
새로 만들고 싶은 생각도 있지만 DB에 관해 아는게 없다보니 기존 게시판 보다 빠르게 만들 자신역시 없습니다 --;
---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/
댓글 달기