• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 서비스
    • MySQL유지보수
    • MySQL라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.1 한글메뉴얼) [close]
  • 1. MySQL 5.1 Reference Manual
  • 2. Installing and MySQL 업그레이드하기
  • 3. 사용 설명서 (Tutorial)
  • 4. MySQL 프로그램 사용하기
  • 5. 데이터베이스 관리
  • 6. 리플리케이션
  • 7. 최적화 (Optimization)
  • 8. 클라이언트 및 유틸리티 프로그램
  • 1. 클라이언트 및 유틸리티 프로그램 개요
    2. innochecksum — 오프라인 InnoDB 체크섬 유틸리티
    3. my_print_defaults — 옵션 파일에 있는 옵션 출력하기
    4. myisam_ftdump — 풀-텍스트 (Full-Text) 인덱스 정보 출력하기
    5. myisamchk — MyISAM 테이블-관리 유틸리티
    6. myisamlog — MyISAM 로그 파일 컨텐츠 출력하기
    7. myisampack — 압축된 읽기 전용 MyISAM 테이블 만들기
    8. mysql — MySQL 명령어-라인 툴
    9. mysqlaccess — 접속 권한 검사를 위한 클라이언트
    10. mysqladmin — MySQL 서버를 관리하기 위한 클라이언트
    11. mysqlbinlog — 바이너리 로그 파일을 처리하기 위한 유틸리티
    12. mysqlcheck — 테이블 관리 및 복구 프로그램
  • 9. 언어 구조 (Language Structure)
  • 10. 문자 셋 지원
  • 24. API 및 라이브러리
  • 25. Connectors

8.10. mysqladmin — MySQL 서버를 관리하기 위한 클라이언트

mysqladmin은 관리 연산을 수행하는 클라이언트이다. 이것을 사용해서 서버의 구성 및 현재의 상태를 체크할 수 있고, 데이터 베이스를 생성 및 제거할 수 있다.

mysqladmin은 다음과 같이 호출한다:

 

shell> mysqladmin [option] command [command-arg] [command [command-arg]] ...

mysqladmin은 다음 명령어들을 지원한다. 다음의 명령어 중에는 명령어 뒤에 인수를 가지는 것들도 있다.

  • create db_name

db_name라는 이름의 새로운 데이터 베이스를 생성한다.

  • debug

서버로 하여금 디버그 정보를 에러 로그에 기록하도록 한다.

MySQL 5.1.12부터 이것은 이벤트 스케줄러에 관한 정보를 포함한다. Section 20.4, “Event Scheduler Status”를 참조할 것.

  • drop db_name

db_name 라는 이름의 데이터베이스와 여기에 있는 모든 테이블을 제거한다.

  • extended-status

서버 상태 변수 및 그 값을 보여준다.

 

MySQL Enterprise LOCAL활성화의 보안 관련 전문 지식은 MySQL 네트워크 모니터링 및 자문 서비스에 설명해 놓았다. http://www.mysql.com/products/enterprise/advisors.html 참조할 것

  • flush-hosts

호스트 캐시에 있는 모든 정보를 플러시한다.

  • flush-logs

모든 로그를 플러시한다.

  • flush-privileges

그랜트 테이블을 다시 읽어 온다 (reload 와 동일함).

  • flush-status

상태 변수를 비운다 (Clear).

  • flush-tables

모든 테이블을 플러시한다.

  • flush-threads

쓰레드 캐시를 플러시한다.

  • kill id,id,...

서버 쓰레드를 죽인다 (Kill). 여러 개의  쓰레드 ID 값을 줄 경우에는, 리스트 중간에 스페이스가 없어야 한다.

  • old-password new-password

이것은 password 명령어와 유사하지만, 구형 (4.1 이전 버전) 패스워드 해싱 포맷을 사용해서 패스워드를 저장한다. (Section 5.7.9, “Password Hashing as of MySQL 4.1”참조)

 

MySQL Enterprise LOCAL활성화의 보안 관련 전문 지식은 MySQL 네트워크 모니터링 및 자문 서비스에 설명해 놓았다. http://www.mysql.com/products/enterprise/advisors.html 참조할 것

  • password new-password

새로운 패스워드를 설정한다. 이것은 서버에 접속하기 위해 mysqladmin과 함께 사용하는 계정용 패스워드를 new-password 로 변경 시킨다. 따라서, 동일한 계정을 사용해서 mysqladmin (또는 다른 클라이언트 프로그램)을 호출하는 다음 시점부터는 이 새로운 패스워드를 사용해야 한다.

 

new-password 값이 스페이스 또는 사용하는 명령어 해석기에서 특별하게 취급되는 다른 문자를 가지고 있는 경우에는, 인용 부호를 사용해서 이것들을 지정해 주어야 한다. 윈도우에서는, 이중 인용 부호를 사용해야 한다; 단일 인용 부호는 패스워드의 일부분으로 간주된다. 예를 들면:

 

shell> mysqladmin password "my new password"

  • ping

서버가 제대로 동작 중인지를 체크한다. 서버가 구동 중에 있다면, mysqladmin 는 0을 리턴하고, 그렇지 않다면 1을 리턴한다. mysqladmin 은 Access denied 일 경우에도 0을 리턴하는데, 서버가 접속을 거부하기는 했지만 구동 중이기 때문이며, 이것은 서버가 구동을 하지 않는 상황과는 다른 것이다.

  • processlist

액티브 서버 쓰레드의 리스트를 보여준다. 이것은 SHOW PROCESSLIST 명령문의 결과와 유사한 내용을 출력한다. 만일 --verbose 옵션을 주게 되면, 그 결과는 SHOW FULL PROCESSLIST와 비슷하게 나온다. (Section 13.5.4.25, “SHOW PROCESSLIST 신텍스 ” 참조.)

  • reload

그랜트 테이블을 다시 읽어 온다.

  • refresh

모든 테이블을 플러시한 다음에 닫고 로그 파일을 연다.

  • shutdown

서버를 종료 시킨다.

  • start-slave

슬레이브 서버 상에서 리플리케이션을 시작한다.

  • status

서버 상태 메시지를 짧게 보여준다.

  • stop-slave

슬레이브 서버에서 리플리케이션을 종료 한다.

  • variables

서버 시스템 변수 및 그 값을 보여 준다.

 

MySQL Enterprise LOCAL활성화의 보안 관련 전문 지식은 MySQL 네트워크 모니터링 및 자문 서비스에 설명해 놓았다. http://www.mysql.com/products/enterprise/advisors.html 참조할 것

  • version

서버로부터 버전 정보를 보여준다.

모든 명령어는 각각의 고유 접두사를 사용해서 축약할 수가 있다. 예를 들면:

 

shell> mysqladmin proc stat

+----+-------+-----------+----+---------+------+-------+------------------+

| Id | User  | Host      | db | Command | Time | State | Info             |

+----+-------+-----------+----+---------+------+-------+------------------+

| 51 | monty | localhost |    | Query   | 0    |       | show processlist |

+----+-------+-----------+----+---------+------+-------+------------------+

Uptime: 1473624  Threads: 1  Questions: 39487 

Slow queries: 0  Opens: 541  Flush tables: 1 

Open tables: 19  Queries per second avg: 0.0268

mysqladmin status 명령어 결과는 아래의 값을 표시한다:

  • Uptime

MySQL 서버가 구동을 한 시간(초 단위).

  • Threads

액티브 쓰레드의 숫자(클라이언트).

  • Questions

서버가 시작된 이후 클라이언트에서 보내진 문의 (쿼리) 숫자.

  • Slow queries

long_query_time 시간 보다 길게 걸린 쿼리의 숫자. Section 5.11.5, “슬로우 쿼리 로그” 참조.

  • Opens

서버가 연 테이블의 숫자.

  • Flush tables

서버가 실행한 flush-*, refresh, 그리고 reload 명령어의 숫자.

  • Open tables

현재 열려 있는 테이블의 숫자.

  • Memory in use

mysqld가 직접 할당한 메모리 크기. MySQL이 --with-debug=full와 함께 컴파일 된 경우에만 이 값이 출력된다.

  • Maximum memory used

mysqld가 직접 할당한 메모리 최대 값. MySQL이 --with-debug=full와 함께 컴파일 된 경우에만 이 값이 출력된다.

유닉스 소켓 파일을 사용해서 로컬 서버에 접속을 할 때 mysqladmin shutdown을 실행하게 되면, mysqladmin은 서버가 올바르게 종료 되었다는 것을 확인하기 위해 서버의 프로세스 ID 파일이 제거될 때까지 대기를 하게 된다.

mysqladmin는 다음 옵션을 지원한다:

  • --help, -?

도움말 메시지를 출력하고 종료

  • --character-sets-dir=path

문자 셋이 설치되어 있는 디렉토리. Section 5.10.1, “데이터 및 정렬을 위해 사용되는 문자 셋”을 참조.  

  • --compress, -C

서버 및 클라이언트가 압축을 지원할 경우, 두 서버간에 전달된 모든 정보를 압축한다.

  • --count=N, -c N

반복된 명령어 실행을 위한 반복 횟수. 이것은 --sleep 옵션과 함께 동작을 한다.

  • --debug[=debug_옵션], -# [debug_옵션]

디버깅 로그를 작성. debug_options 스트링은 종종 'd:t:o,file_name'이 되기도 한다. 디폴트는 'd:t:o,/tmp/mysqladmin.trace'.

  • --default-character-set=charset_name

디폴트 문자 셋으로 charset_name 를 사용한다. Section 5.10.1, “데이터 및 정렬을 위해 사용되는 문자 셋” 참조.  

  • --force, -f

drop db_name 명령어에 대해 확인을 요청하지 않게 한다. 여러 개의 명령어를 사용하면, 에러가 발생하더라도 계속 진행을 한다.

  • --host=host_name, -h host_name

주어진 호스트에서 MySQL 서버에 접속을 한다.

  • --no-beep, -b

서버로의 연결 실패와 같은 에러를 위해 디폴트로 발생되는 경고음을 억제한다. 이 옵션은 MySQL 5.1.17에서 추가되었다.

  • --password[=password], -p[password]

서버에 접속을 할 때 사용하는 패스워드. 축약 폼 (-p)을 사용한다면, 이 옵션과 패스워드 사이에는 스페이스를 두면 안 된다. 명령어 라인에서 --password 또는 -p 옵션 뒤에 패스워드를 지정하지 않으면, 프롬프트가 나오게 된다.

명령어 라인에서 패스워드를 지정하는 것은 안전하지 않은 것으로 간주된다. Section 5.8.6, “패스워드 보안 유지” 참조.

  • --port=port_num, -P port_num

접속할 때 사용하는 TCP/IP 포트 번호.

  • --protocol={TCP|SOCKET|PIPE|MEMORY}

사용할 접속 프로토콜.

  • --relative, -r

--sleep 옵션을 함께 사용했을 때의 값과 현재의 값을 비교해 준다. 현재 버전까지 이 옵션은 extended-status 명령어에서만 동작을 한다.

  • --silent, -s

서버와의 접속이 이루어지지 않을 경우에 조용히 (에러 없이) 종료 한다.

  • --sleep=delay, -i delay

delay 시간 동안 슬리핑(sleeping)한 후에 명령어를 반복 실행한다. --count 옵션은 반복 횟수를 결정한다.

  • --socket=path, -S path

localhost에 접속을 할 경우, 사용할 유닉스 소켓 파일, 또는 윈도우에서 사용할 지명된 파이프 이름.

  • --ssl*

--ssl 로 시작하는 옵션으로 SSL을 통해 서버에 접속할지 여부를 정하고, SSL 키와 공인인증을 찾을 위치를 표시한다. Section 5.8.7.3, “SSL 명령어 옵션” 참조.

  • --user=user_name, -u user_name

서버에 접속을 할 때 사용하는 MySQL 사용자 이름.

  • --verbose, -v

버보스 모드(Verbose mode). 프로그램이 실행한 사항에 대해 보다 자세한 정보를 출력한다.

  • --version, -V

버전 정보를 보여 주고 종료한다.

  • --vertical, -E

결과를 수직으로 출력한다. 이것은 –relative와 유사하지만, 이 옵션은 결과를 수직으로 출력한다.

  • --wait[=count], -w[count]

접속을 하지 못하는 경우, 종료를 하는 대신에 대기를 하고 다시 접속을 시도한다. count 값이 주어지면, 이 값은 재 시도 횟수를 나타내는 것이다. 디폴트는 한 번이다.

또한, --var_name=value 신텍스를 사용해서 아래의 변수를 설정할 수 있다:

  • connect_timeout

접속 타임 아웃 이전의 최대 시간. 디폴트 값은 43200 (12 시간)이다.

  • shutdown_timeout

서버 셧 다운용 최대 대기 시간. 디폴트는 3600 (1 시간)이다.

 

--set-variable=var_name=value or -O var_name=value 신텍스를 이용함으로써 변수를 설정할 수 있다. 이 신텍스는 무시된다.

서울시 강남구 영동대로 602 6층  TEL: 02-6061-0006
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved