5.3.1 여러 데이터 디렉토리 설정
컴퓨터에서 각 MySQL 인스턴스는 자체 데이터 디렉토리를 갖도록합니다. 장소는 --datadir=
옵션을 사용하여 지정됩니다. path
새로운 인스턴스에 대한 데이터 디렉토리를 설치하려면 여러 가지 방법이 있습니다.
새로운 데이터 디렉토리를 생성한다.
기존의 데이터 디렉토리를 복사한다.
그런 다음 각 방법에 대해 자세히 설명합니다.
일반적으로 두 서버가 동일한 데이터베이스의 데이터를 업데이트하도록해서는 없습니다. 이렇게하면 사용하고있는 운영 시스템이 장애가없는 시스템 잠금을 지원하지 않는 경우에 바람직하지 않은 뜻밖의 결과가 발생할 수 있습니다. (이 경고에도 불구하고) 동일한 데이터 디렉토리를 사용하는 여러 서버를 실행하고 이러한 로깅을 사용하는 경우 적절한 옵션을 사용하여 각 서버에 대해 고유 될 로그 파일 이름을 지정해야 수 있습니다. 그렇지 않으면 서버는 같은 파일에 기록하려고합니다.
위의 예방책이 준수해도 이런 종류의 설정은 MyISAM
과 MERGE
테이블에서만 작동 다른 스토리지 엔진에서는 작동하지 않습니다. 또한 데이터 디렉토리를 여러 서버간에 공유하는 것에 대한 경고는 NFS 환경에서는 항상 해당합니다. 여러 MySQL Server가 공통의 데이터 디렉토리에 NFS를 통해 액세스 할 수 있도록하는 것은 매우 좋지 않은 방법입니다. 주요 문제는 NFS이 속도의 병목이 될 것입니다. 이것은 그렇게 사용하는 것은 아닙니다. NFS 또 다른 위험은 2 개 이상의 서버가 서로 간섭하지 않는 방식을 고안 할 필요가 있다는 것입니다. 일반적으로 NFS 파일 잠금은 lockd
데몬에서 처리되지만, 현재 어떤 상황에서도 100 %의 신뢰성으로 락을 실행할 수있는 플랫폼은 존재하지 않습니다.
새 데이터 디렉터리 만들기
이 방법을 사용하면 데이터 디렉토리는 MySQL을 처음 설치했을 때와 같은 상태가됩니다. 이것은 MySQL 계정의 기본 세트를 가지고 사용자 데이터가 없습니다.
Unix는 mysql_install_db를 실행하여 데이터 디렉토리를 초기화합니다. 섹션 2.10.1 "Unix 유사 시스템에서 설치 후 절차" 를 참조하십시오.
Windows에서 데이터 디렉토리는 MySQL 배포판에 포함되어 있습니다.
Windows 용 MySQL Zip 아카이브 배포는 변경되지 않은 상태의 데이터 디렉토리가 저장되어 있습니다. 이렇게 메일을 임시 위치에 압축을 풀고 새 인스턴스를 설치하는 장소에 그
data
디렉토리를 복사합니다.Windows MSI 패키지 설치 프로그램이 설치된 서버가 사용하는 데이터 디렉토리를 만들고 설치뿐만 아니라 설치 디렉토리 아래에
data
라는 새 "템플릿"데이터 디렉토리도 만듭니다. MSI 패키지를 사용하여 설치가 실행 된 후 템플릿 데이터 디렉토리를 복사하여 추가 MySQL 인스턴스를 설정할 수 있습니다.
기존의 데이터 디렉토리에 복사
이 방법을 사용하면 데이터 디렉토리에 존재하는 모든 MySQL 계정 또는 사용자 데이터는 새로운 데이터 디렉토리에 인계됩니다.
데이터 디렉토리를 사용하는 기존 MySQL 인스턴스를 중지합니다. 이것은 보류중인 변경 내용을 인스턴스가 디스크에 플래시 Clean Shutdown 상태에 있어야합니다.
새 데이터 디렉토리가 있어야 할 자리에 데이터 디렉토리를 복사합니다.
기존 인스턴스에서 사용되는 옵션 파일
my.cnf
또는my.ini
를 복사합니다. 이것은 신규 인스턴스의 기초가됩니다.원래 데이터 디렉토리를 참조하는 모든 경로 이름이 새 데이터 디렉토리를 참조하도록 새 옵션 파일을 변경합니다. 또한 인스턴스마다 고유해야한다 TCP / IP 포트 번호와 로그 파일 같은 다른 옵션도 변경할 수 있습니다. 인스턴스마다 고유해야 매개 변수의 목록은 섹션 5.3 "하나의 시스템에서 여러 MySQL 인스턴스 실행" 을 참조하십시오.
새 인스턴스를 시작하고 새 옵션 파일을 사용하도록 지시합니다.