데이터베이스
-
DBUnit 사용시 테스트 데이터 INSERT 문제Object & Test 2011. 10. 12. 19:20
데이터베이스와 관련된 기능의 검증을 위해 단위 테스트를 작성할 때 DbUnit을 사용하면 많은 도움을 얻을 수 있다. DbUnit을 통해 테스트 메소드 실행 전에 픽스처를 데이터베이스에 입력하고 테스트가 종료되면 삭제하는 일을 아주 편하게 할 수 있기 때문이다. 이를 통해, 테스트 메소드의 독립적인 수행을 보장하고, 테스트 데이터베이스를 항상 깨끗한 상태로 유지할 수 있다. 하지만 가끔 문제가 생기는 경우가 있는데 동일한 테이블에 넣어야 하는 테스트 데이터의 크기가 다른 경우이다. 보통 다음과 같은 경우가 되겠다. 이 경우 테스트케이스를 구동하면 column-3, column-4의 값이 누락되어 입력이 안된다. 상위에 있는 데이터셋(dataset)에 컬럼이 두 개만 설정되어 있기 때문이다. DBUnit은..
-
Mysql 서버에서 실행되는 쿼리 분석기타기술 2011. 6. 27. 20:04
IBM Developerworks를 보다가 mysql 최적화에 관련된 흥미 있는 내용이 있어 로그로 남겨본다. 데이터베이스를사용해서 애플리케이션을 개발할 때, 성능 이슈를 해결하기 위해 느린 쿼리를 찾아내야 하는 일이 종종 있는데 해당 기사에서는 Mysql을 데이터베이스로 사용할 때 느린 쿼리를 잡아내는 방법에 대한 소개가 있어 좀더 상세히 적어본다. Mysql에서는 실행 시간이 오래 걸리는 쿼리를 잡아내게 위해서는 먼저, 설정파일에 로그 파일을 기록할 위치와, 몇 초 이상 걸리는 쿼리를잡아낼 건지를 설정해야 한다. 설정하는 방법에는 두 가지 방법이 있는데 먼저 이야기할 것은 config파일에설정하는 방법이다. 보통 리눅스에 mysql을 설치할 경우설정 파일(my.출)이 /etc/mysql/my.cnf에..