개발관련/데이터베이스 썸네일형 리스트형 mysql 실행중인 쿼리 확인 및 중지 요즘 업무가 많아 블러그에 또 소흘해진다. 간만에 시간이 나서 북마크 해두었던 내용들을 정리해본다. 회사에서 주로 사용하는 mysql 가끔 사용량이 많거나 쿼리 수행속도가 늦을경우 확인을 해야하는데 지금 어떤 쿼리들이 실행되고 있는지 확인 할 때 사용하는 적절한 명령어를 찾았다. show processlist;기본적으로 프로세스 아이디, 계정명, 호스트, 데이터베이스 명, 현재수행작업, 진행시간, 상태, 쿼리내용이 나오게 된다. 이중에 시간이 많이 걸리는 쿼리와 테이블을 확인해보면서 index를 잡기도 하고 바로 쿼리를 끝내기 위해 kill을 해준다 kill 프로세스 아이디 캡쳐를 했을때는 현재 실행중인 프로세스가 몇개 없었지만 많을때는 데이터 베이스를 그냥 리붓 시켜버린다. 더보기 mysql복구 최근 일이다. idc에서 장비 교체로 서버가 다 접속이 차단되면서 몇대가 죽었다. 웹서버의 경우 갑자기 죽으면 대용량 처리하는 디비에서 꼭 문제가 생긴다. 이럴때는 서버 올라오자 마자 보통 phpmyadmin을 사용해서 싹 복구시키는데 우리는 보안상 phpmyadmin도 없고 외부에서 접속이 안된다. 이럴때는 서버 접속해서 바로 checktable , repaire를 날려줘야 한다. 테이블 한개만 확인할때는 mysql접속후check table 테이블명;repair table 테이블명;이지만 통 데이터베이스를 체크하려면mysql bin폴더를 찾거나 whereis mysqlcheck 명령어를 사용하여 mysqlcheck툴을 찾는다. 그러면 저기 보이는것처럼 /usr/bin/mysqlcheck 라는 곳에 툴이.. 더보기 오라클 시퀀스 누가 오라클 시퀀스를 나에게 문의를 해놔서 글을 남긴다. 간단하게 시퀀스는 일련번호이다. 그래서 db에 insert 할때 키값용으로 주로 사용된다. mysql에 auto_increment 였나 하고 비슷하지만 mysql에서는 키값 증가용으로 사용될 뿐이고 오라클에서는 객체로 존재한다. 시퀀스를 만들어보자. (시퀀스 명은 exm_seq 라고 만들자) 시퀀스 만드는 쿼리가 뭐냐고 묻는다면 솔직히 난 모른다. 어느 프로젝트에 들어가더라도 개발툴 사용해서 개발하고 일일이 손코딩 하는사람없다. 토드같은 툴을 사용하면 새 시퀀스를 클릭해서 만들면 금방 만든다. 학교에서 혹은 학원에서 시퀀스를 이렇게 생성하고 저렇게 사용하고 캐쉬는 얼마정도 잡아줘야하고, 당신이 dba가 아닌이상 시퀀스만들어 달라고 요청하고 그걸로 .. 더보기 이전 1 다음