Loading...
MySQL 9.5 Reference Manual 9.5의 15.1.20 CREATE LOGFILE GROUP Statement의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
1CREATE LOGFILE GROUP logfile_group 2 ADD UNDOFILE 'undo_file' 3 [INITIAL_SIZE [=] initial_size] 4 [UNDO_BUFFER_SIZE [=] undo_buffer_size] 5 [REDO_BUFFER_SIZE [=] redo_buffer_size] 6 [NODEGROUP [=] nodegroup_id] 7 [WAIT] 8 [COMMENT [=] 'string'] 9 ENGINE [=] engine_name
이 statement는 logfile_group 이라는 이름의 새로운 로그 파일 그룹을 생성하며, 'undo_file' 이라는 이름의 단일 언두 파일을 가집니다. CREATE LOGFILE GROUP statement에는 정확히 하나의 ADD UNDOFILE 절만 존재할 수 있습니다. 로그 파일 그룹의 네이밍을 다루는 규칙은 Section 11.2, “Schema Object Names”를 참조하십시오.
참고
모든 NDB Cluster 디스크 데이터 오브젝트는 동일한 네임스페이스를 공유합니다. 이는 각 디스크 데이터 오브젝트 가 (어떤 특정 타입의 디스크 데이터 오브젝트 각각이 아니라) 반드시 고유한 이름을 가져야 함을 의미합니다. 예를 들어, 동일한 이름을 가진 테이블스페이스와 로그 파일 그룹을 가질 수 없으며, 동일한 이름의 테이블스페이스와 데이터 파일을 가질 수도 없습니다.
임의의 시점에 하나의 NDB Cluster 인스턴스당 존재할 수 있는 로그 파일 그룹은 오직 하나뿐입니다.
선택적 INITIAL_SIZE 파라미터는 언두 파일의 초기 크기를 설정합니다. 지정하지 않으면 기본값은 128M (128 megabytes)입니다. 선택적 UNDO_BUFFER_SIZE 파라미터는 로그 파일 그룹을 위한 언두 버퍼에 사용되는 크기를 설정합니다. UNDO_BUFFER_SIZE의 기본값은 8M (8 megabytes)이며, 이 값은 사용 가능한 시스템 메모리의 양을 초과할 수 없습니다.
이 두 파라미터는 모두 바이트 단위로 지정됩니다. 옵션으로, 둘 중 하나 또는 둘 모두에 대해 my.cnf에서 사용하는 것과 유사한 규모를 나타내는 한 글자의 축약을 뒤에 붙일 수 있습니다. 일반적으로 이는 M (megabytes) 또는 G (gigabytes) 문자 중 하나입니다.
UNDO_BUFFER_SIZE에 사용되는 메모리는 SharedGlobalMemory 데이터 노드 설정 파라미터 값에 의해 크기가 결정되는 글로벌 풀에서 가져옵니다. 여기에는 InitialLogFileGroup 데이터 노드 설정 파라미터 설정에 의해 이 옵션에 암시적으로 적용되는 기본값도 포함됩니다.
UNDO_BUFFER_SIZE에 허용되는 최대값은 629145600 (600 MB)입니다.
32-bit 시스템에서 INITIAL_SIZE에 대해 지원되는 최대값은 4294967296 (4 GB)입니다. (Bug #29186)
INITIAL_SIZE에 허용되는 최소값은 1048576 (1 MB)입니다.
ENGINE 옵션은 이 로그 파일 그룹에 사용되는 스토리지 엔진을 결정하며, engine_name 은 스토리지 엔진의 이름입니다. 이는 반드시 NDB (또는 NDBCLUSTER)여야 합니다. ENGINE이 설정되지 않은 경우, MySQL은 default_storage_engine 서버 시스템 변수에 의해 지정된 엔진을 사용하려고 시도합니다.
어떤 경우이든, 엔진이 NDB 또는 NDBCLUSTER로 지정되지 않은 경우, CREATE LOGFILE GROUP statement는 성공한 것처럼 보이지만 실제로는 로그 파일 그룹을 생성하지 못합니다. 다음 예와 같습니다:
1mysql> CREATE LOGFILE GROUP lg1 2 -> ADD UNDOFILE 'undo.dat' INITIAL_SIZE = 10M; 3Query OK, 0 rows affected, 1 warning (0.00 sec) 4 5mysql> SHOW WARNINGS; 6+-------+------+------------------------------------------------------------------------------------------------+ 7| Level | Code | Message | 8+-------+------+------------------------------------------------------------------------------------------------+ 9| Error | 1478 | Table storage engine 'InnoDB' does not support the create option 'TABLESPACE or LOGFILE GROUP' | 10+-------+------+------------------------------------------------------------------------------------------------+ 111 row in set (0.00 sec) 12 13mysql> DROP LOGFILE GROUP lg1 ENGINE = NDB; 14ERROR 1529 (HY000): Failed to drop LOGFILE GROUP 15 16mysql> CREATE LOGFILE GROUP lg1 17 -> ADD UNDOFILE 'undo.dat' INITIAL_SIZE = 10M 18 -> ENGINE = NDB; 19Query OK, 0 rows affected (2.97 sec)
스토리지 엔진으로 NDB 이외의 것이 지정되었을 때 CREATE LOGFILE GROUP statement가 실제로는 에러를 반환하지 않고, 성공한 것처럼 보이는 사실은 알려진 이슈이며, 향후 NDB Cluster 버전에서 해결할 예정입니다.
REDO_BUFFER_SIZE, NODEGROUP, WAIT, 및 COMMENT는 파싱되지만 무시되며, 따라서 MySQL 9.5에서는 아무런 효과도 없습니다. 이 옵션들은 향후 확장을 위해 마련된 것입니다.
ENGINE [=] NDB와 함께 사용될 때, 각 Cluster 데이터 노드에 로그 파일 그룹과 연관된 언두 로그 파일이 생성됩니다. Information Schema FILES 테이블을 쿼리하여 언두 파일이 생성되었는지 확인하고 그에 대한 정보를 얻을 수 있습니다. 예를 들면 다음과 같습니다:
1mysql> SELECT LOGFILE_GROUP_NAME, LOGFILE_GROUP_NUMBER, EXTRA 2 -> FROM INFORMATION_SCHEMA.FILES 3 -> WHERE FILE_NAME = 'undo_10.dat'; 4+--------------------+----------------------+----------------+ 5| LOGFILE_GROUP_NAME | LOGFILE_GROUP_NUMBER | EXTRA | 6+--------------------+----------------------+----------------+ 7| lg_3 | 11 | CLUSTER_NODE=3 | 8| lg_3 | 11 | CLUSTER_NODE=4 | 9+--------------------+----------------------+----------------+ 102 rows in set (0.06 sec)
CREATE LOGFILE GROUP는 NDB Cluster의 디스크 데이터 스토리지에서만 유용합니다. Section 25.6.11, “NDB Cluster Disk Data Tables”를 참조하십시오.
15.1.19 CREATE LIBRARY Statement
15.1.21 CREATE PROCEDURE and CREATE FUNCTION Statements