• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 4. MySQL 프로그램
  • 1. MySQL 프로그램 개요
    2. MySQL 프로그램 사용
    3. MySQL 서버와 서버 시작 프로그램
    4. 설치 관련 프로그램
    5. 클라이언트 프로그램
    6. MySQL 관리 프로그램 및 유틸리티 프로그램
    1. innochecksum - 오프라인 InnoDB 파일 체크섬 유틸리티
    2. myisam_ftdump - 전체 텍스트 인덱싱 정보보기
    3. myisamchk - MyISAM 테이블 유지 보수 유틸리티
    4. myisamlog - MyISAM 로그 파일의 내용보기
    5. myisampack - 압축 된 읽기 전용 MyISAM 테이블의 생성
    6. mysql_config_editor - MySQL 구성 유틸리티
    7. mysqlaccess - 액세스 권한을 확인하는 클라이언트
    8. mysqlbinlog - 바이너리 로그 파일을 처리하기위한 유틸리티
    9. mysqldumpslow - 슬로우 쿼리 로그 파일의 요약
    10. mysqlhotcopy - 데이터베이스 백업 프로그램
    11. mysql_convert_table_format - 지정된 스토리지 엔진을 사용하는 테이블의 변환
    12. mysql_find_rows - 파일에서 SQL 문을 추출
    13. mysql_fix_extensions - 테이블 파일 확장명의 정규화
    14. mysql_setpermission - 부여 테이블에 허가를 대화식으로 설정
    15. mysql_waitpid - 프로세스를 종료하고 종료를 대기
    16. mysql_zap - 패턴과 일치하는 프로세스를 강제 종료
    7. MySQL 프로그램 개발 유틸리티
    8. 기타 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

4.6.6 mysql_config_editor - MySQL 구성 유틸리티

mysql_config_editor 유틸리티 (MySQL 5.6.6에서 사용 가능)을 사용하면 .mylogin.cnf 라는 암호화 된 로그인 파일에 인증 정보를 저장할 수 있습니다. 파일의 위치는 Windows에서는 %APPDATA%\MySQL 디렉토리 비 Windows 시스템에서는 현재 사용자의 홈 디렉토리입니다. 이 파일은 MySQL Server에 연결하기위한 인증 정보를 취득하기 위해 MySQL 클라이언트 프로그램에 의해 나중에 읽을 수 있습니다.

다른 파일 이름을 지정하려면 MYSQL_TEST_LOGIN_FILE 환경 변수를 설정합니다. 이 변수는 mysql-test-run.pl 테스트 유틸리티를 사용하지만 mysql_config_editor 및 mysql, mysqladmin 등의 MySQL 클라이언트에 의해 인식됩니다.

mysql_config_editor는 .mylogin.cnf 파일을 암호화 할 평문으로 읽을 수 없으며, 클라이언트 프로그램에 의해 해독 된 경우, 그 내용은 메모리 내에서만 사용됩니다. 이렇게하면 암호를 평문이 아닌 형식의 파일로 저장하여 명령 행 또는 환경 변수에 노출 될 필요도 전혀없이 나중에 사용할 수 있습니다. mysql_config_editor는 사용자가 파일의 내용을 표시 할 수 있도록 print 명령을 제공하지만,이 경우에도 암호 값은 마스크되므로 다른 사용자가 볼 수있는 방법으로는 결코 나타나지 않습니다.

mysql_config_editor가 사용하는 암호화는 암호가 .mylogin.cnf 에 평문으로 나타나는 것을 방지 암호가 실수로 노출되는 것을 방지 보안 수단을 제공합니다. 예를 들어, 일반 암호화되지 않은 my.cnf 옵션 파일을 화면에 표시하면 거기에 포함 된 암호는 누군가 볼 수 있습니다. .mylogin.cnf 에서는 그렇지 않습니다. 그러나 사용되는 암호화는 강력한 공격자를 저지하는 것은 아니라 해독 될 수 없다고는 생각하지 않도록하십시오. 시스템에서 귀하의 파일에 액세스하기 위해 시스템 관리자 권한을 획득 할 수있는 사용자라면 약간의 작업에서 .mylogin.cnf 파일을 해독 할 수 있습니다.

로그인 파일은 현재 사용자가 읽기 및 쓰기 권한이 다른 사용자는 액세스 할 수 있어야합니다. 그렇지 않으면 mysql_config_editor 그것을 무시하고 파일은 클라이언트 프로그램에서도 사용되지 않습니다. Windows에서는 이러한 제한이 적용되지 않습니다. 대신 사용자는 %APPDATA%\MySQL 디렉토리에 액세스 할 수 있어야합니다.

암호화되지 않은 형식의 .mylogin.cnf 로그인 파일은 다른 옵션 파일과 마찬가지로 옵션 그룹으로 구성됩니다. .mylogin.cnf 의 옵션 그룹은 "로그인 경로"라고, host , user 및 password 라는 제한된 옵션 집합 만 허용하는 그룹입니다. 로그인 경로는 서버 호스트 및 서버에서 인증을위한 인증 정보를 나타내는 값의 집합이라고 생각합니다. 예를 나타냅니다.

 [myloginpath]
 user = myname
 password = mypass
 host = 127.0.0.1

서버에 연결하는 클라이언트 프로그램을 시작하면 다른 옵션 파일과 함께 .mylogin.cnf 가 사용됩니다. 우선 순위는 다른 옵션 파일보다 높지만 클라이언트의 명령 행에서 명시 적으로 지정된 옵션보다 낮습니다. 옵션 파일이 사용되는 순서의 자세한 내용은 섹션 4.2.6 "옵션 파일 사용" 을 참조하십시오.

mysql_config_editor 은 다음과 같이 시작합니다.

 shell> mysql_config_editor [ program_options ] command [ command_options ]

program_options 일반적인 mysql_config_editor 옵션으로 구성됩니다. command 는 실행할 명령을 보여 command_options 명령이 필요로하는 추가 옵션을 제공합니다.

명령은 .mylogin.cnf Login 파일에 대해 수행 할 작업을 나타냅니다. 예를 들어, set 로그인 경로를 파일로 내보내기, remove 로그인 경로를 제거하고 print 로그인 경로의 내용을 표시합니다. 옵션이 지정된 경우 로그인 경로 및 로그인 경로에서 사용하는 값​​과 같은 명령에 대한 정보를 제공합니다.

프로그램 인수 집합에서 명령 이름의 위치는 중요합니다. 예를 들어, 다음 명령 행은 같은 인수를가집니다 만, 결과는 다릅니다.

 mysql_config_editor --help set
 mysql_config_editor set --help

첫 번째 명령 행은 일반 mysql_config_editor 도움말을 표시하고 set 명령은 무시됩니다. 두 번째 명령 행은 set 명령의 도움말을 표시합니다.

로컬 MySQL 서버 및 호스트 remote.example.com 에 연결하기 위해 local 및 remote 라는 두 개의 로그인 경로를 설정한다고합니다. 로컬 서버에 localuser 및 localpass 는 사용자 이름과 암호를 인증하고 원격 서버에 remoteuser 및 remotepass 는 사용자 이름과 암호로 인증을 수행합니다. .mylogin.cnf 파일에 로그인 경로를 설정하려면 다음 set 명령을 사용합니다. 명령은 한 줄에 하나씩 입력하고 메시지가 나타나면 적절한 암호를 입력합니다.

shell> mysql_config_editor set --login-path=client
         --host=localhost --user=localuser --password
Enter password: enter password "localpass" here
shell> mysql_config_editor set --login-path=remote
         --host=remote.example.com --user=remoteuser --password
Enter password: enter password "remotepass" here

mysql_config_editor이 .mylogin.cnf 파일로 내보낼 내용을 표시하려면 print 명령을 사용합니다.

 shell> mysql_config_editor print --all
 [local]
 user = localuser
 password = *****
 host = localhost
 [remote]
 user = remoteuser
 password = *****
 host = remote.example.com

print 명령은 각 로그인 경로를 행 집합으로 표시합니다. 각 세트는 처음에 그룹 머리글 (대괄호에 로그인 경로 이름을 나타냅니다)가 로그인 경로 옵션 값이 그 뒤를합니다. 암호 값은 마스크 된 일반 텍스트로 표시되지 않습니다.

앞의 예제에 표시된대로, .mylogin.cnf 파일에는 여러 로그인 경로를 포함 할 수 있습니다. 그러면 mysql_config_editor에서 다른 MySQL 서버에 연결하기 위해 여러 '인물'을 설정하는 것이 쉬워집니다. 이들은 나중에 모든 클라이언트 프로그램을 시작하면 --login-path 옵션을 사용하여 이름으로 선택할 수 있습니다. 예를 들어, 로컬 서버에 연결하려면 다음 명령을 사용합니다.

 shell> mysql --login-path=local

원격 서버에 연결하려면 다음 명령을 사용합니다.

 shell> mysql --login-path=remote

set 명령을 mysql_config_editor로 사용하여 로그인 경로를 만들 경우 가능한 세 가지 옵션 값 (호스트 이름, 사용자 이름 및 암호)을 모두 지정할 필요는 없습니다. 지정된 값만 경로에 기록됩니다. 누락 된 값이 나중에 필요할 경우에는 클라이언트 경로를 시작하고 MySQL 서버에 연결할 때, 옵션 파일 또는 명령 행에서 지정할 수 있습니다. 또한 명령 행에서 지정된 옵션은 .mylogin.cnf 파일을 포함한 옵션 파일의 옵션을 재정의합니다. 예를 들어, remote 로그인 경로의 인증 정보가 호스트 remote2.example.com 에도 적용될 호스트 서버에 다음과 같이 연결할 수 있습니다.

 shell> mysql --login-path=remote --host=remote2.example.com

.mylogin.cnf 파일이 존재하는 경우 --no-defaults 옵션이 사용 된 경우에도 반드시 읽습니다. 이는 --no-defaults 가 존재하는 경우에도 명령 행보다 안전한 방법으로 암호를 지정할 수 있습니다.

mysql_config_editor 명령

이 섹션에서는 허용되는 mysql_config_editor 명령 및 명령 고유의 의미를 가지는 옵션의 해석에 대해 설명합니다. 또한 mysql_config_editor은 mysql_config_editor 실행 중에 더 많은 정보를 생성하기위한 --verbose 처럼 모든 명령에 사용할 수있는 다른 옵션도 가지고 있습니다. 이 옵션은 작업이 기대하는 효과를 내지 않을 경우 문제를 진단하는 데 도움이됩니다. 지원되는 옵션 목록은 mysql_config_editor 옵션 을 참조하십시오.

mysql_config_editor는 다음 명령을 지원합니다.

  • help

    도움말 메시지를 표시하고 종료합니다.

  • print [ options ]

    .mylogin.cnf 의 내용을 암호화되지 않은 형식으로 출력합니다. 암호는 ***** 로 표시됩니다.

    print 명령은 다음 옵션을 취합니다.

    • --all

      모든 로그인 경로를 출력합니다.

    • --login-path= name

      지명 된 로그인 경로를 출력합니다.

    로그인 경로가 지정되지 않은 경우 기본 경로 이름은 client 입니다. --all 및 --login-path 가 모두 지정된 경우 --all 가 우선됩니다.

  • remove [ options ]

    로그인 경로를 .mylogin.cnf 파일에서 제거합니다.

    remove 명령은 다음 옵션을 취합니다.

    • --host

      호스트 이름을 로그인 경로에서 제거합니다.

    • --login-path= name

      삭제하기 로그인 경로. 이 옵션이 지정되지 않은 경우 기본 경로 이름은 client 입니다.

    • --password

      비밀번호를 로그인 경로에서 제거합니다.

    • --port

      TCP / IP 포트 번호를 로그인 경로에서 제거합니다.

    • --socket

      Unix 소켓 파일 이름을 로그인 경로에서 제거합니다.

    • --user

      사용자 이름을 로그인 경로에서 제거합니다.

    remove 명령에 대한 --host , --user 및 --password 옵션은 MySQL 5.6.9에서 지원됩니다. remove 명령에 대한 --port 및 --socket 옵션은 MySQL 5.6.11에서 지원됩니다.

    remove 명령은 --host , --password , --port , --socket 및 --user 의 각 옵션에 지정된 값만 로그인 경로에서 제거합니다. 이들이 모두 지정되지 않은 경우 remove 로그인 전체 경로를 제거합니다. 예를 들어 다음 명령은 client 로그인 전체 경로가 아니라 client 로그인 경로에서 user 값만을 삭제합니다.

     mysql_config_editor remove --login-path = client --user
    
  • reset

    .mylogin.cnf 파일의 내용을 비 웁니다. 파일이 존재하지 않으면 생성됩니다.

  • set [ options ]

    로그인 경로를 .mylogin.cnf 파일로 내 보냅니다.

    set 명령은 다음 옵션을 취합니다.

    • --host= host_name

      로그인 경로로 내보낼 호스트 이름입니다.

    • --login-path= name

      만들 로그인 경로. 이 옵션이 지정되지 않은 경우 기본 경로 이름은 client 입니다.

    • --password

      로그인 경로로 내보내는 암호를 요구합니다.

    • --port= port_num

      로그인 경로로 내보낼 TCP / IP 포트 번호.

    • --socket= file_name

      로그인 경로로 내보낼 Unix 소켓 파일 이름.

    • --user= user_name

      로그인 경로로 내보낼 사용자 이름입니다.

    set 명령에 대한 --port 및 --socket 옵션은 MySQL 5.6.11에서 지원됩니다.

    set 명령은 --host , --password , --port , --socket 및 --user 의 각 옵션에 지정된 값만 로그인 경로로 내 보냅니다. 이러한 옵션이 모두 지정되지 않는 경우는 mysql_config_editor 로그인 경로를 빈 그룹으로 내 보냅니다.

    빈 암호를 지정하려면 set 명령을 --password 옵션과 함께 사용 후 암호 프롬프트에서 Enter를 누릅니다. 그 결과 .mylogin.cnf 에 내보내는 로그인 경로는 다음과 같은 행을 포함합니다.

     password =
    

    .mylogin.cnf 에 로그인 경로가 이미 존재하는 경우, set 명령은 그것을 대체합니다. 이것이 사용자가 의도 한 것임을 확인하기 위해 mysql_config_editor는 경고를 출력하여 확인을 요청합니다. 경고 및 프롬프트를 표시하지 않으려면 --skip-warn 옵션을 사용합니다.

mysql_config_editor 옵션

mysql_config_editor는 다음 옵션을 지원합니다.

표 4.13 mysql_config_editor 옵션

형식 설명 도입
--all 모든 로그인 경로를 출력
--debug 디버깅 로그를 작성한다
--help 도움말 메시지를 표시하고 종료
--host 로그인 파일을 내보낼 호스트
--login-path 로그인 경로명
--password 로그인 파일로 내보낼 암호를 요구
--port 로그인 파일로 내보낼 TCP / IP 포트 번호 5.6.11
--socket 로그인 파일로 내보낼 Unix 소켓 파일 이름 5.6.11
--user 로그인 파일을 내보낼 사용자 이름
--verbose 중복 모드
--version 버전 정보를 출력하고 종료
--warn 로그인 경로 덮어 대해 경고하고 확인을 요구

  • --help , -?

    도움말 메시지를 표시하고 종료합니다. set 또는 remove 등의 명령 이름이 앞에있는 경우 그 명령에 대한 정보를 표시합니다.

  • --all

    print 명령에 로그인 파일의 모든 로그인 경로를 출력합니다.

  • --debug[= debug_options ] , -# debug_options

    디버그 로그를 기록합니다. 일반적인 debug_options 문자열은 d:t:o, file_name 입니다. 기본값은 d:t:o 입니다.

  • --host= host_name , -h host_name

    set 명령에 로그인 경로로 내보낼 호스트 이름입니다. remove 명령에 로그인 경로에서 호스트 이름을 삭제합니다.

  • --login-path= name , -G name

    print , remove 및 set 명령에 대해 .mylogin.cnf 로그인 파일에서 사용하는 로그인 경로.

    사용자가 MySQL 서버에 연결하는 데 사용하는 로그인 경로를 지정할 수 있도록 클라이언트 프로그램도 --login-path 옵션을 지원합니다. 클라이언트 프로그램은 --login-path 지정하는 첫 번째 옵션이어야합니다. 이것은 mysql_config_editor에는 해당하지 않습니다. 섹션 4.2.7 "옵션 파일의 처리에 영향을주는 명령 행 옵션」 을 참조하십시오.

  • --password , -p

    set 명령에 대해 mysql_config_editor가 암호를 요청하고 사용자가 입력 한 값을 로그인 경로로 내보낼 수 있습니다. mysql_config_editor가 시작 프롬프트를 표시 한 후 사용자는 암호를 입력하고 Enter를 누르도록하십시오. 다른 사용자가 비밀번호를 보는 것을 방지하기 위해 mysql_config_editor 에코하지 않습니다.

    이 옵션은 옵션 이름 다음에 암호 값을 지정할 수 없습니다. 즉 mysql_config_editor는 다른 사용자에게 보이는 수있는 명령 행에 암호를 입력하는 것은 결코 아닙니다. 이것은 다른 대부분의 MySQL 프로그램과는 다릅니다. 다른 프로그램에서는 --password= pass_val 또는 -p pass_val 으로 명령 행에서 암호를 지정할 수 있습니다. (단,이 방법은 보안이 아니라 피해야한다.)

    remove 명령에 로그인 경로에서 암호를 제거합니다.

  • --port= port_num , -P port_num

    set 명령에 로그인 경로로 내보낼 TCP / IP 포트 번호. remove 명령에 로그인 경로에서 포트 번호를 삭제합니다.

  • --socket= file_name , -S file_name

    set 명령에 로그인 경로로 내보낼 Unix 소켓 파일 이름. remove 명령에 로그인 경로에서 소켓 파일을 삭제합니다.

  • --user= user_name , -u user_name

    set 명령에 로그인 경로로 내보낼 사용자 이름입니다. remove 명령에 로그인 경로에서 사용자 이름을 삭제합니다.

  • --verbose , -v

    중복 모드. 프로그램의 동작에 대해 더 많은 정보를 출력합니다.

  • --version , -V

    버전 정보를 출력하고 종료합니다.

  • --warn , -w

    set 명령에 대한 명령이 기존 로그인 경로를 무시하려고하는 경우 사용자에게 경고하고 확인을 요구합니다. 이 옵션은 기본적으로 활성화됩니다. 해제하려면 --skip-warn 을 사용합니다.


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