본문 바로가기
MySQL Admin Guide/MySQL Test

10. 기초 Admin 마지막 테스트

by 모모레 2010. 5. 13.
1. 쿼리 작성 시 내가 사용할 index를 설정하는 방법은 무엇인가?

답> use index ( index_nm ) 을 사용하거나, force index ( index_nm )을 사용하여 from 절에 기입한다.

2. 예약어로 지정되어 있는 단어를 컬럼 명으로 사용하고자 할 경우 가능한가 가능하지 않은가?

답> 인용 부호를 이용하면 가능하다.

3. 식별자를 사용할 때 숫자만으로 이루어진 식별자를 사용할 수 있는가?

답> 인용 부호를 이용하면 가능하지만, 하지 않는 것이 좋다.

4. InnoDB Storage Engine을 사용 하는 경우 mysqldump를 사용하더라도 대기현상에 빠져 서비스 운용에 문제가 발생할 가능성이 있다. 그 가능성은 어떤 것 때문인가 ?

답> mysqldump를 실행하는 경우 mysqldump 모듈은 데이터를 내리기 전에 flush tables 구문을 통해 table들에 대한 정보를 flush 를 하는데, 이때 실행시간이 오래 걸리는 쿼리가 동작하고 있다면, 그로 인해 대기 현상이 빠질 수 있다.

5. 만약, MySQL 접속하는 커넥션들이 커넥션 pool을 이용하여 관리되고 있는 것이 아니라면, MySQL의 ( thread_cache_size )의 값을 수정하여 몇개의 커넥션을 캐쉬하여 커넥션 pool과 같은 효과를 낼 수 있다.

6. 테이블이 어느 순간에 열리지 않는 경우, ( table_open_cache 또는 table_cache )의 값을 확인하여 모든 스레드가 열수 있는 테이블의 수를 확인하고, ( open_files_limit )의 값을 확인하여 OS가 mysqld에 할당한 오픈 가능한 파일의 갯수가 얼마인지도 확인해야 한다. 만약 이 variable의 값이 0인 경우 OS상의 설정값을 그대로 가져간다는 의미이다.

7. 테이블에 현재 시간을 입력해야 하는 경우 sysdate()을 사용하기 보다 ( now() ) 를 사용하는 것이 좋다.


8. 실행 계획을 보고자 하는 경우 SQL 문 앞에 ( explain )을 사용하여 실행하면 된다.

9. 테이블의 실행계획 상에서 조합하는 순서를 from 절에 기술된 순서대로 처리하고자 하는 경우 쿼리 앞에 ( straight join ) 구문을 사용하면 된다.

'MySQL Admin Guide > MySQL Test' 카테고리의 다른 글

9. 기초 Admin 9장 테스트  (0) 2010.05.12
8. 기초 Admin 8장 테스트  (0) 2010.05.12
6. 기초 Admin 6장 테스트  (0) 2010.05.12
4. 기초 Admin 4장 테스트  (0) 2010.05.10
3. 기초 Admin 3장 테스트  (0) 2010.05.10