• 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 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 1. 데이터 정의 문
    2. 데이터 조작 문
    3. MySQL 트랜잭션과 잠금 문
    4. 복제 문
    5. Prepared Statements위한 SQL 구문
    6. MySQL 복합문 구문
    7. 데이터베이스 관리 문
    1. 계정 관리 문
    2. 테이블 유지 보수 문
    3. 플러그인 및 사용자 정의 함수 문
    1. 사용자 정의 함수에 대한 CREATE FUNCTION 구문
    2. DROP FUNCTION 구문
    3. INSTALL PLUGIN 구문
    4. UNINSTALL PLUGIN 구문
    4. SET 구문
    5. SHOW 구문
    6. 기타 관리 문
    8. MySQL 유틸리티 문
  • 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 새로운 기능

13.7.3.3 INSTALL PLUGIN 구문

 INSTALL PLUGIN plugin_name soname ' shared_library_name ' 

이 문은 서버 플러그인을 설치합니다. 여기에는 mysql.plugin 테이블에 대한 INSERT 권한이 필요합니다.

plugin_name 라이브러리 파일에 포함되어있는 플러그인 디스크립터 구조에 정의 된 플러그인의 이름입니다 ( 섹션 24.2.4.2 "플러그인 데이터 구조" 를 참조하십시오). 플러그인 이름은 대소 문자를 구분하지 않습니다. 플러그인 이름은 C 소스 파일 쉘 명령 행, M4 및 Bourne 쉘 스크립트, SQL 환경에서 사용되므로 극대화 호환성을 위해 플러그인 이름은 ASCII 문자, 숫자 및 밑줄로 제한 하도록하십시오.

shared_library_name 플러그인 코드가 포함 된 공유 라이브러리의 이름입니다. 이 이름에는 파일 확장명이 포함되어 있습니다 ( libmyplugin.so , libmyplugin.dll , libmyplugin.dylib 등).

공유 라이브러리는 플러그인 디렉토리 ( plugin_dir 시스템 변수에 지정된 디렉토리)에 존재해야합니다. 이 라이브러리는 하위 디렉토리가 아닌 플러그인 디렉토리 자체에 존재해야합니다. 기본적으로 plugin_dir 는 pkglibdir 구성 변수에 지정된 디렉토리 아래의 plugin 디렉토리이지만, 서버가 시작될 때 plugin_dir 값을 설정하여 변경할 수 있습니다. 예를 들어, my.cnf 파일에서 그 값을 설정합니다.

 [mysqld]
 plugin_dir = /path/to/plugin/directory

plugin_dir 값이 상대 경로 인 경우, MySQL 기반 디렉토리 ( basedir 시스템 변수의 값)을 기준으로하는 것으로 간주됩니다.

INSTALL PLUGIN 플러그인을 사용 가능하게하기 위해 플러그인 코드를로드하고 초기화합니다. 플러그인은 사용 가능하게되기 전에 그 플러그인이 실행해야하는 모든 설정을 처리하는 그 초기화 함수를 실행하여 초기화됩니다. 서버는 종료 될 때로드되는 각 플러그인의 초기화 해제 함수를 실행하면 그 플러그인에 최종 정리 작업을 수행하기위한 변경이 발생합니다.

INSTALL PLUGIN 또한 플러그인 이름과 라이브러리 파일 이름을 나타내는 행을 mysql.plugin 테이블에 추가하여 플러그인의 등록도 실시합니다. 서버 시작시 서버는 mysql.plugin 테이블에 나열되어있는 모든 플러그인을로드하고 초기화합니다. 즉, 플러그인은 서버가 시작할 때마다 아니라 한 번만 INSTALL PLUGIN 에 의해 설치됩니다. 시작 플러그인로드는 서버가 --skip-grant-tables 옵션으로 기동 된 경우는 실행되지 않습니다.

플러그인 라이브러리는 여러 플러그인을 포함 할 수 있습니다. 각 플러그인을 설치하려면 별도의 INSTALL PLUGIN 명령문을 사용합니다. 각 문은 다른 플러그인을 지정하지만, 그 모든 것이 동일한 라이브러리 이름을 지정합니다.

INSTALL PLUGIN 을 지정하면 서버는 서버 시작시와 마찬가지로 옵션 ( my.cnf ) 파일을 읽습니다. 이렇게하면 플러그인은이 파일에서 모든 관련 옵션을 얻을 수 있습니다. 플러그인을로드하기 전이라도 옵션 파일에 플러그인 옵션을 추가 할 수 있습니다 ( loose 프리픽스가 사용되는 경우). 또한 플러그인을 제거하거나 my.cnf 를 수정하거나 플러그인을 다시 설치 할 수 있습니다. 플러그인을이 방법으로 다시 시작하면 서버를 다시 시작하지 않고 새로운 옵션 값을 지정할 수 있습니다.

서버 시작시 개별 플러그인로드를 제어하는 옵션은 섹션 5.1.8.1 "플러그인 설치 및 제거" 를 참조하십시오. 서버에 시스템 테이블을 읽지 못하도록 지시하는 --skip-grant-tables 옵션이 지정된 경우 한 번 서버 시작시 플러그인을로드 할 필요가있는 경우 --plugin-load 옵션을 사용하여 합니다. 섹션 5.1.3 "서버 명령어 옵션" 을 참조하십시오.

플러그인을 제거하려면 UNINSTALL PLUGIN 문을 사용합니다.

플러그인 로딩에 대한 추가 정보는 섹션 5.1.8.1 "플러그인 설치 및 제거" 를 참조하십시오.

설치되어있는 플러그인을 확인하려면 SHOW PLUGINS 문을 사용하거나 INFORMATION_SCHEMA.PLUGINS 테이블에 쿼리합니다.

플러그인 라이브러리를 다시 컴파일 할 때 그것을 다시 설치해야하는 경우 다음 방법 중 하나를 사용할 수 있습니다.

  • UNINSTALL PLUGIN 을 사용하여 라이브러리의 모든 플러그인을 제거하고 새로운 플러그인 라이브러리 파일을 플러그인 디렉토리에 설치 한 후 INSTALL PLUGIN 을 사용하여 모든 플러그인을 라이브러리에 설치합니다. 이 절차는 서버를 중지하지 않고 사용할 수 있다는 장점이 있습니다. 그러나 플러그인 라이브러리에 다수의 플러그인이 포함되어있는 경우, 다수의 INSTALL PLUGIN 및 UNINSTALL PLUGIN 명령문을 발행해야합니다.

  • 서버를 중지하고 새로운 플러그인 라이브러리 파일을 플러그인 디렉토리에 설치 한 후 서버를 다시 시작합니다.


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