• 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 서버관리
  • 1. MySQL Server
    2. MySQL Server 로그
    3. 하나의 시스템에서 여러 MySQL 인스턴스 실행
    1. 여러 데이터 디렉토리 설정
    2. Windows에서 여러 MySQL 인스턴스 실행
    3. Unix에서 여러 MySQL 인스턴스 실행
    4. 다중 서버 환경에서 클라이언트 프로그램 사용
    4. DTrace를 사용하여 mysqld 추적
  • 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 새로운 기능

5.3 하나의 시스템에서 여러 MySQL 인스턴스 실행

5.3.1 여러 데이터 디렉토리 설정
5.3.2 Windows에서 여러 MySQL 인스턴스 실행
5.3.3 Unix에서 여러 MySQL 인스턴스 실행
5.3.4 다중 서버 환경에서 클라이언트 프로그램 사용

상황에 따라서는 MySQL의 여러 인스턴스를 단일 시스템에서 실행하는 경우도 있습니다. 기존의 실전 설정을 그대로두고 새로운 MySQL 릴리즈를 테스트 할 수 있습니다. 또는 사용자가 직접 관리하는 다른 mysqld 서버에 대한 액세스 권한을 다른 사용자에게 부여 할 수 있습니다. (예를 들어, 사용자는 별도의 MySQL 설치를 다른 고객을 위해 제공하는 인터넷 서비스 프로 바이더 인 경우도 있습니다.)

인스턴스마다 다른 MySQL Server 바이너리를 사용하거나 여러 인스턴스에 동일한 바이너리를 사용하거나이 두 가지 방법을 조합 할 수 있습니다. 예를 들어, MySQL 5.5과 MySQL 5.6에서 각 서버를 실행하고 다른 버전에 따라 소정의 워크로드가 어떻게 처리되는지를 확인 할 수 있습니다. 또는 현재 실전 버전의 여러 인스턴스를 실행하고 각각 다른 데이터베이스 집합을 관리하는 경우도 있습니다.

별도의 서버 바이너리를 사용할지 여부에 관계없이 실행하는 각 인스턴스는 여러 작업 매개 변수에 대해 고유 한 값을 사용하여 구성해야합니다. 이렇게하면 인스턴스간에 충돌 할 우려가 없습니다. 매개 변수는 명령 행 옵션 파일 또는 환경 변수의 설정에 따라 설정할 수 있습니다. 섹션 4.2.3 "프로그램 옵션 지정" 을 참조하십시오. 소정의 인스턴스에 의해 사용되는 값을 표시하려면 인스턴스에 연결하여 SHOW VARIABLES 문을 실행합니다.

MySQL 인스턴스가 관리하는 주요 자원은 데이터 디렉토리입니다. 각 인스턴스가 다른 데이터 디렉토리를 사용하도록 해당 위치는 --datadir= path 옵션을 사용하여 지정됩니다. 각 인스턴스를 인스턴스 고유의 데이터 디렉토리에 구성하는 방법과 구성을하지 않는 것이 위험에 대한 경고는 5.3.1 "여러 데이터 디렉토리 설정" 을 참조하십시오.

다른 데이터 디렉토리를 사용하는 것 외에도 몇 가지 다른 옵션은 각 서버 인스턴스에 대해 다른 값을 가질 필요가 있습니다.

  • --port= port_num

    --port 는 TCP / IP 연결의 포트 번호를 제어합니다. 또는 호스트에 여러 개의 네트워크 주소가있는 경우, --bind-address 를 사용하여 각 서버가 다른 주소를 대기하게 할 수 있습니다.

  • --socket= path

    --socket 은 Unix에서 Unix 소켓 파일 경로 또는 Windows에서 명명 된 파이프 이름을 제어합니다. Windows의 경우 명명 된 파이프 연결을 허용하도록 구성된 서버에 대해서만 개별 파이프 이름을 지정하는 것이 필요합니다.

  • --shared-memory-base-name= name

    이 옵션은 Windows에서만 사용됩니다. 이것은 클라이언트가 공유 메모리를 사용하여 연결할 수 있도록하기 위해 Windows 서버에서 사용하는 공유 메모리 이름을 지정합니다. 공유 메모리 연결을 허용하도록 구성된 서버에 대해서만 개별 공유 메모리 이름을 지정하는 것이 필요합니다.

  • --pid-file= file_name

    이 옵션은 서버 프로세스 ID를 기록하는 파일의 경로 이름을 나타냅니다.

다음 로그 파일 옵션을 사용하는 경우이 값은 서버마다 달라야합니다.

  • --general_log_file= file_name

  • --log-bin[= file_name ]

  • --slow_query_log_file= file_name

  • --log-error[= file_name ]

로그 파일 옵션에 대한 자세한 설명은 섹션 5.2 "MySQL Server 로그" 를 참조하십시오.

성능을 향상 시키려면 다음 옵션을 서버마다 다른 방식으로 지정하여 여러 물리적 디스크에 부하를 분산시킬 수 있습니다.

  • --tmpdir= path

다른 임시 디렉토리를 작성하면 특정 임시 파일을 만든 MySQL Server를 판별하기 쉬워집니다.

여러 MySQL 설치 위치가 다른 경우 --basedir= path 옵션을 사용하여 각 설치의 기본 디렉토리를 지정 할 수 있습니다. 이렇게하면 각 인스턴스는 자동으로 다른 데이터 디렉토리, 로그 파일 및 PID 파일을 사용합니다. 그 이유는 이러한 매개 변수의 기본값이 기본 디렉터리에 상대적으로 지정되기 때문입니다. 이 경우 지정해야하는 다른 옵션은 --socket 과 --port 옵션뿐입니다. tar 파일 바이너리 배포판을 사용하여 다른 버전의 MySQL을 설치합니다. 이들은 다른 위치에 설치되므로 각 설치에 대한 서버를 해당 기본 디렉토리에서 명령 bin / mysqld_safe를 사용하여 시작할 수 있습니다. mysqld_safe에 의해, mysqld에 전달되는 적절한 --basedir 옵션이 결정되며, --socket 과 --port 옵션 만 mysqld_safe에 지정해야합니다.

뒤 부분에서 설명하도록 적절한 명령 옵션을 지정하거나 환경 변수를 설정하여 추가 서버를 시작할 수 있습니다. 그러나 여러 서버를 더 지속적으로 실행해야 할 경우 옵션 파일을 사용하여 서버에 고유 될 필요가있는 옵션 값을 각 서버에 지정하는 것이 간단합니다. --defaults-file 옵션이 도움이됩니다.

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