24.2.2 플러그인 API의 구성 요소
서버 플러그인의 구현은 여러 구성 요소로 구성되어 있습니다.
SQL 문 :
INSTALL PLUGIN플러그인을mysql.plugin테이블에 등록하고 플러그인 코드를로드합니다.UNINSTALL PLUGIN플러그인을mysql.plugin테이블로부터 등록 해제 플러그인 코드를 언로드합니다.전문 인덱싱의
WITH PARSER절은 전체 파서 플러그 인을 특정FULLTEXT인덱스에 연결합니다.SHOW PLUGINS서버 플러그인에 대한 정보를 표시합니다.
명령 줄 옵션 및 시스템 변수 :
--plugin-load옵션을 지정하면 서버 시작시 플러그인을로드 할 수 있습니다.plugin_dir시스템 변수는 모든 플러그인을 설치할 필요가있는 디렉토리의 위치를 지정합니다. 이 변수의 값은 서버 시작시--plugin_dir=옵션으로 지정할 수 있습니다. mysql_config --plugindir을 지정하면 기본 플러그인 디렉토리 경로 이름이 표시됩니다.path
플러그인 로딩에 대한 추가 정보는 섹션 5.1.8.1 "플러그인 설치 및 제거" 를 참조하십시오.
플러그인 관련 테이블 :
INFORMATION_SCHEMA.PLUGINS테이블에는 플러그인 정보가 포함되어 있습니다.mysql.plugin테이블에는INSTALL PLUGIN에 의해 설치된 각 플러그인을 보여 플러그인을 사용하는 데 필요합니다. 새로 MySQL을 설치하는 경우,이 테이블은 설치 과정에서 생성됩니다.
클라이언트 플러그인의 구현은 더 간단합니다.
mysql_options()C API 함수의 경우MYSQL_DEFAULT_AUTH옵션 및MYSQL_PLUGIN_DIR옵션을 지정하면 클라이언트 프로그램이 인증 플러그인을로드 할 수 있습니다.클라이언트 플러그인을 관리 할 수있는 C API 함수가 있습니다.
MySQL이 플러그인을 구현하는 방법을 알아 보려면 MySQL 소스 배포판의 다음 소스 파일을 참조하십시오.
include/mysql디렉토리의plugin.h는 공개 플러그인 API를 공개하고 있습니다. 플러그인 라이브러리를 작성하는 모든 사용자는이 파일을 조사하는 것이 좋습니다.plugin_파일에 특정 유형의 플러그인에 대한 추가 정보가 있습니다.xxx.hclient_plugin.h에는 클라이언트 플러그인과 관련된 정보가 포함되어 있습니다.sql디렉토리의sql_plugin.h및sql_plugin.cc은 내부 플러그인 구현을 구성하고 있습니다.sql_acl.cc는 서버가 인증 플러그인을 사용하는 장소입니다. 플러그인 개발자는 이러한 파일을 참조 할 필요가 없습니다. 서버가 플러그인을 처리하는 방법을 알고 싶다면,이 파일을 볼 수 있습니다.sql-common디렉토리의client_plugin.h는 C API 클라이언트 플러그인 기능을 구현하고client.c클라이언트 인증 지원을 구현합니다. 플러그인 개발자는 이러한 파일을 참조 할 필요가 없습니다. 서버가 플러그인을 처리하는 방법을 알고 싶다면,이 파일을 볼 수 있습니다.