18.4.7 ndb_config - MySQL Cluster 구성 정보의 추출
이 도구는 여러 소스 (MySQL Cluster 관리 노드 또는 config.ini
파일 또는 my.cnf
파일) 중 하나에서 데이터 노드, SQL 노드 및 API 노드의 현재 구성 정보를 추출합니다. 기본적으로 관리 노드가 구성 데이터 소스입니다. 기본값을 재정의하려면 --config-file
옵션 또는 --mycnf
옵션을 지정하여 ndb_config를 실행합니다. --config_from_node=
노드 ID를 지정하여 데이터 노드를 소스로 사용할 수 있습니다. node_id
ndb_config 사용할 수있는 모든 구성 매개 변수 및 그 기본값 최대 값, 최소값 및 기타 정보의 오프라인 덤프를 생성 할 수 있습니다. 이 덤프는 텍스트 또는 XML 형식으로 생성 할 수 있습니다. 자세한 내용은이 섹션 뒷부분 --configinfo
및 --xml
옵션의 설명을 참조하십시오).
--nodes
, --system
또는 --connections
의 옵션 중 하나를 사용하면 결과를 섹션 ( DB
, SYSTEM
또는 CONNECTIONS
)에 의해 필터링 할 수 있습니다.
다음 표는 ndb_config 고유의 옵션이 포함되어 있습니다. 추가 설명이 표 다음에 있습니다. 대부분의 MySQL Cluster 프로그램 (ndb_config 포함)에 공통되는 옵션은 섹션 18.4.27 "MySQL Cluster 프로그램에 공통 옵션 - MySQL Cluster 일반적인 프로그램 옵션" 을 참조하십시오.
표 18.82이 표는 ndb_config 프로그램의 명령 행 옵션에 대해 설명하고 있습니다
형식 | 설명 | 추가 또는 삭제 |
---|---|---|
| 노드 정보 (DB 섹션)만을 출력합니다. | 모든 MySQL 5.6 기반 자료 |
| CONNECTIONS 섹션 정보 만 출력합니다. --nodes 옵션 또는 --system 옵션과 함께 사용할 수 없습니다. | 모든 MySQL 5.6 기반 자료 |
| 하나 이상의 쿼리 옵션 (속성) | 모든 MySQL 5.6 기반 자료 |
| 호스트를 지정합니다 | 모든 MySQL 5.6 기반 자료 |
| 노드 유형을 지정합니다 | 모든 MySQL 5.6 기반 자료 |
| 이 ID 노드의 구성을 가져옵니다 | 모든 MySQL 5.6 기반 자료 |
| 필드 구분자 | 모든 MySQL 5.6 기반 자료 |
| 행 단락 문자 | 모든 MySQL 5.6 기반 자료 |
| config.ini 파일의 경로를 설정합니다 | 모든 MySQL 5.6 기반 자료 |
| my.cnf 파일에서 구성 데이터를 읽습니다 | 모든 MySQL 5.6 기반 자료 |
| --ndb-connectstring의 단축형 | 모든 MySQL 5.6 기반 자료 |
| 모든 NDB 구성 매개 변수에 대한 정보를 기본값 최대 값 및 최소값과 함께 텍스트 형식으로 덤프합니다. XML 출력을 얻으려면 - xml 함께 사용합니다. | 모든 MySQL 5.6 기반 자료 |
| 모든 NDB 구성 매개 변수의 덤프를 기본값 최대 값 및 최소값과 함께 XML 형식으로 취득하려면 - configinfo에 -xml을 사용합니다. | 모든 MySQL 5.6 기반 자료 |
| SYSTEM 섹션 정보 만 출력합니다. --nodes 옵션 또는 --connections 옵션과 함께 사용할 수 없습니다. | 모든 MySQL 5.6 기반 자료 |
| 이 ID의 노드 (데이터 노드 여야합니다)에서 구성 데이터를 검색합니다. | 모든 MySQL 5.6 기반 자료 |
--usage
,--help
또는-?
명령 줄 형식 --help
--usage
ndb_config가 사용 가능한 옵션 목록을 출력하고 종료합니다.
--config_from_node=#
명령 줄 형식 --config_from_node=#
허용되는 값 유형 numeric
기본 none
최소 1
최대 값 48
이 ID를 가진 데이터 노드에서 클러스터 구성 데이터를 가져옵니다.
이 ID를 가진 노드가 데이터 노드가 아닌 경우 ndb_config 오류로 실패합니다 (대신 관리 노드에서 구성 데이터를 검색하려면 단순히이 옵션을 생략합니다).
--version
,-V
명령 줄 형식 --version
ndb_config 버전 정보 문자열을 출력하고 종료합니다.
--ndb-connectstring=
,connect_string
-c
connect_string
명령 줄 형식 --ndb-connectstring=connectstring
--connect-string=connectstring
허용되는 값 유형 string
기본 localhost:1186
관리 서버에 연결하는 데 사용하는 연결 문자열을 지정합니다. 이 연결 문자열의 형식은 섹션 18.3.2.3 "MySQL Cluster의 연결 문자열" 에서 설명한 것과 동일한이며, 기본값은
localhost:1186
입니다.--config-file=
path-to-file
명령 줄 형식 --config-file=path
허용되는 값 유형 file name
기본 관리 서버의 구성 파일 (
config.ini
)에 대한 경로를 지정합니다. 여기에는 상대 또는 절대 경로를 지정할 수 있습니다. ndb_config가 선언 된 호스트와 다른 호스트에 관리 노드가있는 경우는 절대 경로를 사용해야합니다.--mycnf
명령 줄 형식 --mycnf
허용되는 값 유형 boolean
기본 FALSE
my.cnf
파일에서 구성 데이터를 읽습니다.--query=
,query-options
-q
query-options
명령 줄 형식 --query=string
허용되는 값 유형 string
기본 이것은 쿼리 옵션의 쉼표로 구분 된 목록입니다. 즉, 하나 이상의 반환되는 노드 속성의 목록입니다. 여기에는
id
(노드 ID), 타입 (노드 타입. 즉,ndbd
,mysqld
또는ndb_mgmd
), 그리고 값이 취득되는 구성 매개 변수가 포함됩니다.예를 들어,
--query=id,type,indexmemory,datamemory
은 각 노드의 노드 ID, 노드 유형,DataMemory
및IndexMemory
를 리턴합니다.참고지정된 매개 변수가 특정 유형의 노드에 맞지 않는 경우 해당 값은 빈 문자열이 반환됩니다. 자세한 내용은이 섹션 뒷부분의 예를 참조하십시오.
--host=
hostname
명령 줄 형식 --host=name
허용되는 값 유형 string
기본 구성 정보를 취득하는 노드의 호스트 이름을 지정합니다.
참고호스트 이름
localhost
는 일반적으로 IP 주소127.0.0.1
로 해결됩니다 만, 이것은 모든 운영 플랫폼 및 구성에 이렇게된다고는 할 수 없습니다. 이것은config.ini
에localhost
를 사용하여localhost
가 다른 주소로 확인된다 (예를 들어, 일부 버전의 SUSE Linux에서는이127.0.0.2
입니다) 다른 호스트에서 ndb_config가 실행되고 있는 경우 ndb_config--host=localhost
가 실패 할 수 있다는 것을 의미합니다. 일반적으로 최상의 결과를 얻으려면 호스트에 관련된 모든 MySQL Cluster 구성 값에 숫자 IP 주소를 사용하거나 모든 MySQL Cluster 호스트가localhost
를 동일하게 취급하고 있는지 확인하십시오.--id=
node_id
--nodeid=
node_id
명령 줄 형식 --ndb-nodeid=#
허용되는 값 유형 numeric
기본 0
구성 정보를 수집하는 노드의 ID를 지정하는 경우 이러한 옵션 중 하나를 사용할 수 있습니다. 권장되는 형식은
--nodeid
입니다.--nodes
명령 줄 형식 --nodes
허용되는 값 유형 boolean
기본 FALSE
DB
섹션에 정의 된 파라미터 정보 만 출력하도록 ndb_config에 통지합니다. 이 옵션은--connections
또는--system
과 함께 사용할 수 없습니다.--connections
명령 줄 형식 --connections
허용되는 값 유형 boolean
기본 FALSE
CONNECTIONS
정보만을 출력하도록 ndb_config에 통지합니다. 이 옵션은--nodes
또는--system
과 함께 사용할 수 없습니다.--system
명령 줄 형식 --system
허용되는 값 유형 boolean
기본 FALSE
SYSTEM
의 정보만을 출력하도록 ndb_config에 통지합니다.이 옵션은
--nodes
옵션 또는--system
옵션과 함께 사용할 수 없습니다.--type=
node_type
명령 줄 형식 --type=name
허용되는 값 유형 enumeration
기본 [none]
유효한 값 ndbd
mysqld
ndb_mgmd
지정한
node_type
노드 (ndbd
,mysqld
또는ndb_mgmd
)에 해당하는 구성 값 만 반환되도록 결과를 필터링합니다.--fields=
,delimiter
-f
delimiter
명령 줄 형식 --fields=string
허용되는 값 유형 string
기본 결과의 필드를 구분하는 데 사용되는
delimiter
문자열을 지정합니다. 기본값은 ",
"(쉼표)입니다.참고delimiter
공백 또는 이스케이프 (개행 문자\n
등)가 포함되어 있으면 따옴표로 묶어야합니다.--rows=
,separator
-r
separator
명령 줄 형식 --rows=string
허용되는 값 유형 string
기본 결과 행을 구분하는 데 사용되는
separator
문자열을 지정합니다. 디폴트는 공백 문자입니다.참고separator
에 공백이나 이스케이프 (개행 문자\n
등)가 포함되어 있으면 따옴표로 묶어야합니다.--configinfo
--configinfo
옵션을 지정하면 ndb_config가 속한 MySQL Cluster 배포에서 지원되는 다음의 정보를 포함 각 MySQL Cluster 구성 매개 변수의 목록을 ndb_config가 덤프합니다.각 매개 변수의 목적, 효과 및 사용 방법에 대한 간단한 설명
매개 변수를 사용할 수있는
config.ini
파일의 섹션매개 변수의 데이터 유형 또는 단위
해당하는 경우 매개 변수의 디폴트 값, 최소값 및 최대 값
매개 변수의 목적, 효과 및 사용 방법에 대한 간단한 설명
MySQL Cluster 릴리스 버전 및 빌드 정보
기본적으로이 출력은 텍스트 형식입니다. 이 출력의 일부를 보여줍니다.
shell>
ndb_config --configinfo
****** SYSTEM ****** Name (String) Name of system (NDB Cluster) MANDATORY PrimaryMGMNode (Non-negative Integer) Node id of Primary ndb_mgmd(MGM) node Default: 0 (Min: 0, Max: 4294967039) ConfigGenerationNumber (Non-negative Integer) Configuration generation number Default: 0 (Min: 0, Max: 4294967039) ****** DB ****** MaxNoOfSubscriptions (Non-negative Integer) Max no of subscriptions (default 0 == MaxNoOfTables) Default: 0 (Min: 0, Max: 4294967039) MaxNoOfSubscribers (Non-negative Integer) Max no of subscribers (default 0 == 2 * MaxNoOfTables) Default: 0 (Min: 0, Max: 4294967039) …--configinfo
--xml
명령 줄 형식 --configinfo --xml
허용되는 값 유형 boolean
기본 false
--xml
옵션을 추가하여 ndb_config--configinfo
의 출력을 XML로 가져올 수 있습니다. 출력 결과의 일부를 다음 예제입니다.shell>
ndb_config --configinfo --xml
<configvariables protocolversion="1" ndbversionstring="5.6.27-ndb-7.3.12" ndbversion="458758" ndbversionmajor="7" ndbversionminor="0" ndbversionbuild="6"> <section name="SYSTEM"> <param name="Name" comment="Name of system (NDB Cluster)" type="string" mandatory="true"/> <param name="PrimaryMGMNode" comment="Node id of Primary ndb_mgmd(MGM) node" type="unsigned" default="0" min="0" max="4294967039"/> <param name="ConfigGenerationNumber" comment="Configuration generation number" type="unsigned" default="0" min="0" max="4294967039"/> </section> <section name="NDBD"> <param name="MaxNoOfSubscriptions" comment="Max no of subscriptions (default 0 == MaxNoOfTables)" type="unsigned" default="0" min="0" max="4294967039"/> <param name="MaxNoOfSubscribers" comment="Max no of subscribers (default 0 == 2 * MaxNoOfTables)" type="unsigned" default="0" min="0" max="4294967039"/> … </section> … </configvariables>참고일반적으로 ndb_config
--configinfo
--xml
의해 생성되는 XML 출력은 행당 요소의 형식이 사용되지만 위의 예제와 다음 예제에서는 가독성을 위해 공백을 추가합니다. 대부분의 XML 프로세서는 정상 처리로 불필요한 공백이 무시되거나 무시하도록 지시 할 수 있기 때문에 이에 따라이 출력을 사용하는 응용 프로그램에 차이가 생기지 않는 것입니다.이 XML 출력은 특정 매개 변수가 변경되었을 때
--initial
옵션을 사용하여 데이터 노드를 다시 시작해야 할 수도 보여줍니다. 이것은 해당<param>
요소에initial="true"
속성이 표시 됨으로써 나타납니다. 또한 재부팅 유형 (system
또는node
)도 표시됩니다. 이것은 특정 파라미터에 시스템 다시 시작이 요구되는 경우에 해당<param>
요소에restart="system"
속성이 표시 됨으로써 나타납니다. 예를 들어,Diskless
매개 변수의 값 세트를 변경하면 아래에 표시된 바와 같이 시스템의 초기 재부팅이 필요합니다 (restart
특성 및initial
속성이 볼 수 있도록 강조 표시되어 있습니다).<param name="Diskless" comment="Run wo/ disk" type="bool" default="false" restart="system" initial="true"/>
현재 초기 다시 시작할 필요가 없을 파라미터에 대응하는
<param>
요소의 XML 출력은initial
속성은 표시되지 않습니다. 즉,initial="false"
가 기본이며, 속성이 표시되지 않은 경우는 값false
를 가정합니다. 마찬가지로 기본 재부팅 유형은node
(즉, 클러스터의 온라인 또는 "롤링"다시 시작)이지만,restart
속성은 다시 시작 유형이system
(모든 클러스터 노드를 동시에 종료하고 다시 시작해야 있다는 것을 의미합니다) 인 경우에만 표시됩니다.중요--xml
옵션은--configinfo
옵션을 지정한 경우에만 사용할 수 있습니다.--configinfo
를 지정하지 않고--xml
을 사용하면 오류와 함께 실패합니다.현재 구성 데이터를 검색하기 위해이 프로그램에 사용되는 옵션과 달리 ndb_config가 컴파일 된 경우
--configinfo
및--xml
는 MySQL Cluster 소스에서 가져온 정보를 사용합니다. 따라서이 두 옵션의 경우 실행되는 MySQL Cluster에 연결하거나config.ini
파일 또는my.cnf
파일에 액세스 할 필요가 없습니다.다른 ndb_config 옵션 (
--query
,--type
등)을--configinfo
또는--xml
과 함께 지원되지 않습니다. 현재 그렇게하려고하면 일반적으로--configinfo
또는--xml
이외의 모든 옵션이 무시됩니다. 그러나이 동작은 보증되지 않고 향후 변경 될 수 있습니다. 또한--configinfo
옵션을 지정하여 사용하는 경우 ndb_config는 MySQL Cluster에 액세스하지 않고 어떤 파일도 읽어 않기 때문에--ndb-connectstring
,--config-file
등의 추가 옵션을--configinfo
과 함께 지정하려고해도 의미가 없습니다.
Examples
클러스터의 노드 ID 및 각 노드의 타입을 취득하려면 다음과 같이합니다.
shell>
./ndb_config --query=id,type --fields=':' --rows='\n'
1:ndbd 2:ndbd 3:ndbd 4:ndbd 5:ndb_mgmd 6:mysqld 7:mysqld 8:mysqld 9:mysqld이 예에서는
--fields
옵션을 사용하여 ID 및 각 노드의 타입을 콜론 (:
)으로 구분하고--rows
옵션을 사용하여 각 노드의 값을 새 줄에 출력하고 있습니다.데이터 노드, SQL 노드 및 API 노드가 관리 서버에 연결하는 데 사용할 수있는 연결 문자열을 생성하려면 다음과 같이합니다.
shell>
./ndb_config --config-file=usr/local/mysql/cluster-data/config.ini \ --query=hostname,portnumber --fields=: --rows=, --type=ndb_mgmd
192.168.0.179:1186이 ndb_config 호출에서는 데이터 노드 만 검사 (
--type
옵션을 사용하고 있습니다) 각 노드의 ID와 호스트 이름 값 및DataMemory
,IndexMemory
,DataDir
파라미터의 값 세트가 표시됩니다.shell>
./ndb_config --type=ndbd --query=id,host,datamemory,indexmemory,datadir -f ' : ' -r '\n'
1 : 192.168.0.193 : 83886080 : 18874368 : /usr/local/mysql/cluster-data 2 : 192.168.0.112 : 83886080 : 18874368 : /usr/local/mysql/cluster-data 3 : 192.168.0.176 : 83886080 : 18874368 : /usr/local/mysql/cluster-data 4 : 192.168.0.119 : 83886080 : 18874368 : /usr/local/mysql/cluster-data이 예제에서는 짧은 옵션
-f
및-r
를 필드 구분 문자 및 행 구분자 설정에 각각 사용했다.특정 하나의 호스트가 아닌 호스트를 결과에서 제외하려면
--host
옵션을 사용합니다.shell>
./ndb_config --host=192.168.0.176 -f : -r '\n' -q id,type
3:ndbd 5:ndb_mgmd또한이 예제에서는 짧은 형식
-q
를 사용하여 문의 특성을 지정합니다.마찬가지로 특정 ID의 노드에 결과를 제한하려면
--id
옵션 또는--nodeid
옵션을 사용합니다.