• 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 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 18. MySQL Cluster
  • 1. MySQL Cluster 개요
    2. MySQL Cluster 설치
    3. MySQL Cluster 설정
    4. MySQL Cluster 프로그램
    1. ndbd - MySQL Cluster 데이터 노드 데몬
    2. ndbinfo_select_all - ndbinfo 테이블에서 선택
    3. ndbmtd - MySQL Cluster 데이터 노드 데몬 (멀티 스레드)
    4. ndb_mgmd - MySQL Cluster 관리 서버 데몬
    5. ndb_mgm - MySQL Cluster 관리 클라이언트
    6. ndb_blob_tool - MySQL Cluster 테이블의 BLOB 및 TEXT 컬럼의 체크 및 복구
    7. ndb_config - MySQL Cluster 구성 정보의 추출
    8. ndb_cpcd - NDB 개발을위한 테스트 자동화
    9. ndb_delete_all - NDB 테이블에서 모든 행 삭제
    10. ndb_desc - NDB 테이블 표시
    11. ndb_drop_index - NDB 테이블에서 인덱스 삭제
    12. ndb_drop_table - NDB 테이블 삭제
    13. ndb_error_reporter - NDB 오류보고 유틸리티
    14. ndb_index_stat - NDB 인덱스 통계 유틸리티
    15. ndb_print_backup_file - NDB 백업 파일의 내용을 출력
    16. ndb_print_file - NDB 디스크 데이터 파일 내용 출력
    17. ndb_print_schema_file - NDB 스키마 파일 내용 출력
    18. ndb_print_sys_file - NDB 시스템 파일 내용 출력
    19. ndbd_redo_log_reader - 클러스터 Redo 로그 내용의 확인 및 출력
    20. ndb_restore - MySQL Cluster 백업 복원
    21. ndb_select_all - NDB 테이블의 행의 출력
    22. ndb_select_count - NDB 테이블의 행수 출력
    23. ndb_setup.py - MySQL Cluster의 브라우저 기반 자동 설치 프로그램 시작
    24. ndb_show_tables - NDB 테이블 목록보기
    25. ndb_size.pl - NDBCLUSTER 크기 요구 사항 추정기
    26. ndb_waiter - MySQL Cluster가 지정한 상태가 될 때까지 대기
    27. MySQL Cluster 프로그램에 공통 옵션 - MySQL Cluster 프로그램에 공통 옵션
    5. MySQL Cluster 관리
    6. MySQL Cluster Replication
    7. MySQL Cluster Release Notes
  • 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 새로운 기능

18.4.10 ndb_desc - NDB 테이블 표시

ndb_desc은 하나 이상의 NDB 테이블의 자세한 설명을 출력합니다.

사용법

ndb_desc -c connection_string tbl_name -d db_name [options]
      
ndb_desc -c connection_string index_name -d db_name -t tbl_name

출력 예

USE test;

CREATE TABLE fish (
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(20) NOT NULL,
    length_mm INT(11) NOT NULL,
    weight_gm INT(11) NOT NULL,

    PRIMARY KEY pk (id),
    UNIQUE KEY uk (name)
) ENGINE=NDB;

INSERT INTO fish VALUES
    ('','guppy', 35, 2), ('','tuna', 2500, 150000),
    ('','shark', 3000, 110000), ('','manta ray', 1500, 50000),
    ('','grouper', 900, 125000), ('','puffer', 250, 2500);

ndb_desc 출력 :

shell> ./ndb_desc -c localhost fish -d test -p
-- fish --
Version: 2
Fragment type: 9
K Value: 6
Min load factor: 78
Max load factor: 80
Temporary table: no
Number of attributes: 4
Number of primary keys: 1
Length of frm data: 311
Row Checksum: 1
Row GCI: 1
SingleUserMode: 0
ForceVarPart: 1
FragmentCount: 2
TableStatus: Retrieved
-- Attributes --
id Int PRIMARY KEY DISTRIBUTION KEY AT=FIXED ST=MEMORY AUTO_INCR
name Varchar(20;latin1_swedish_ci) NOT NULL AT=SHORT_VAR ST=MEMORY
length_mm Int NOT NULL AT=FIXED ST=MEMORY
weight_gm Int NOT NULL AT=FIXED ST=MEMORY

-- Indexes --
PRIMARY KEY(id) - UniqueHashIndex
PRIMARY(id) - OrderedIndex
uk$unique(name) - UniqueHashIndex
uk(name) - OrderedIndex

-- Per partition info --
Partition  Row count  Commit count  Frag fixed memory ...
0          2          2             32768             ...
1          4          4             32768             ...

... Frag varsized memory  Extent_space  Free extent_space
... 32768                 0             0
... 32768                 0             0

NDBT_ProgramExit: 0 - OK

여러 테이블에 대한 정보는 테이블 이름을 공백으로 구분 ndb_desc를 한 번 호출하여 얻을 수 있습니다. 모든 테이블은 동일한 데이터베이스에 있어야합니다.

특정 인덱스에 대한 추가 정보를 얻으려면 다음과 같이 ndb_desc의 첫 번째 인수로 인덱스 이름을 지정하고 --table (약어 : -t ) 옵션을 사용합니다.

shell> ./ndb_desc uk -d test -t fish
-- uk --
Version: 3
Base table: fish
Number of attributes: 1
Logging: 0
Index type: OrderedIndex
Index status: Retrieved
-- Attributes --
name Varchar(20;latin1_swedish_ci) NOT NULL AT=SHORT_VAR ST=MEMORY
-- IndexTable 10/uk --
Version: 3
Fragment type: FragUndefined
K Value: 6
Min load factor: 78
Max load factor: 80
Temporary table: yes
Number of attributes: 2
Number of primary keys: 1
Length of frm data: 0
Row Checksum: 1
Row GCI: 1
SingleUserMode: 2
ForceVarPart: 0
FragmentCount: 4
ExtraRowGciBits: 0
ExtraRowAuthorBits: 0
TableStatus: Retrieved
-- Attributes --
name Varchar(20;latin1_swedish_ci) NOT NULL AT=SHORT_VAR ST=MEMORY
NDB$TNODE Unsigned [64] PRIMARY KEY DISTRIBUTION KEY AT=FIXED ST=MEMORY
-- Indexes -- 
PRIMARY KEY(NDB$TNODE) - UniqueHashIndex

NDBT_ProgramExit: 0 - OK

이렇게 인덱스를 지정하면 --extra-partition-info 및 --extra-node-info 옵션은 효과가 없습니다.

출력 Version 컬럼은 테이블의 스키마 객체 버전이 표시됩니다. 이 값의 해석은 NDB Schema Object Versions 를 참조하십시오.

Extent_space 및 Free extent_space 컬럼은 디스크에 열이있는 NDB 테이블에만 관련이 있습니다. 인 메모리 컬럼 만있는 테이블의 경우이 열은 항상 값 0 이 표시됩니다.

이러한 사용 방법을 설명하기 위해 이전 예제를 변경합니다. 먼저 필요한 디스크 데이터 객체를 다음과 같이 작성해야합니다.

CREATE LOGFILE GROUP lg_1
    ADD UNDOFILE 'undo_1.log'
    INITIAL_SIZE 16M
    UNDO_BUFFER_SIZE 2M
    ENGINE NDB;

ALTER LOGFILE GROUP lg_1
    ADD UNDOFILE 'undo_2.log'
    INITIAL_SIZE 12M
    ENGINE NDB;

CREATE TABLESPACE ts_1
    ADD DATAFILE 'data_1.dat'
    USE LOGFILE GROUP lg_1
    INITIAL_SIZE 32M
    ENGINE NDB;

ALTER TABLESPACE ts_1
    ADD DATAFILE 'data_2.dat'
    INITIAL_SIZE 48M
    ENGINE NDB;

(위의 진술 및 그들에 의해 생성되는 객체 내용은 섹션 18.5.12.1 "MySQL Cluster 디스크 데이터 오브젝트」 , 섹션 13.1.14 "CREATE LOGFILE GROUP 구문" 및 섹션 13.1.18 "CREATE TABLESPACE 구문" 을 참조 하십시오.)

컬럼의 2를 디스크에 저장하는 버전 fish 테이블을 작성하고 채울 수있게되었습니다 (이전 버전의 테이블이 있으면 그것을 먼저 삭제합니다).

CREATE TABLE fish (
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(20) NOT NULL,
    length_mm INT(11) NOT NULL,
    weight_gm INT(11) NOT NULL,

    PRIMARY KEY pk (id),
    UNIQUE KEY uk (name)
) TABLESPACE ts_1 STORAGE DISK 
ENGINE=NDB;

INSERT INTO fish VALUES
    ('','guppy', 35, 2), ('','tuna', 2500, 150000),
    ('','shark', 3000, 110000), ('','manta ray', 1500, 50000),
    ('','grouper', 900, 125000), ('','puffer', 250, 2500);

ndb_desc이 버전의 테이블에 대해 실행하면 다음 출력이 표시됩니다.

shell> ./ndb_desc -c localhost fish -d test -p
-- fish --
Version: 3
Fragment type: 9
K Value: 6
Min load factor: 78
Max load factor: 80
Temporary table: no
Number of attributes: 4
Number of primary keys: 1
Length of frm data: 321
Row Checksum: 1
Row GCI: 1
SingleUserMode: 0
ForceVarPart: 1
FragmentCount: 2
TableStatus: Retrieved
-- Attributes --
id Int PRIMARY KEY DISTRIBUTION KEY AT=FIXED ST=MEMORY AUTO_INCR
name Varchar(20;latin1_swedish_ci) NOT NULL AT=SHORT_VAR ST=MEMORY
length_mm Int NOT NULL AT=FIXED ST=DISK
weight_gm Int NOT NULL AT=FIXED ST=DISK

-- Indexes --
PRIMARY KEY(id) - UniqueHashIndex
PRIMARY(id) - OrderedIndex
uk$unique(name) - UniqueHashIndex
uk(name) - OrderedIndex
-- Per partition info --
Partition  Row count  Commit count  Frag fixed memory ...
0          2          2             32768             ...
1          4          4             32768             ...

... Frag varsized memory  Extent_space  Free extent_space
... 32768                 0             0
... 32768                 0             0

NDBT_ProgramExit: 0 - OK

이것은 테이블 스페이스에서 테이블의 각 파티션에 1048576 바이트가 할당 그중 1044440 바이트가 추가 저장을위한 공간임을 의미합니다. 즉,이 테이블의 디스크 기반의 컬럼 데이터를 저장하기 위해 현재 파티션마다 1048576 - 1044440 = 4136 바이트가 사용되고 있습니다. Free extent_space 로 표시되는 바이트 수는 fish 테이블의 디스크 컬럼 데이터를 저장하는 데에만 사용할 수 있습니다. 따라서 INFORMATION_SCHEMA.FILES 테이블에서 선택했을 때 표시되지 않습니다.

다음 표는 ndb_desc 고유의 옵션이 포함되어 있습니다. 추가 설명이 표 다음에 있습니다. 대부분의 MySQL Cluster 프로그램 (ndb_desc 포함)에 공통되는 옵션은 섹션 18.4.27 "MySQL Cluster 프로그램에 공통 옵션 - MySQL Cluster 일반적인 프로그램 옵션" 을 참조하십시오.

표 18.84이 표는 ndb_desc 프로그램의 명령 행 옵션에 대해 설명하고 있습니다

형식 설명 추가 또는 삭제

--blob-info ,

-b

BLOB 테이블의 파티션 정보를 출력에 포함됩니다. -p 옵션을 사용해야합니다

모든 MySQL 5.6 기반 자료

--database=dbname ,

-d

테이블이 들어있는 데이터베이스의 이름

모든 MySQL 5.6 기반 자료

--extra-node-info ,

-n

파티션과 데이터 노드 매핑 출력에 포함됩니다. -p 옵션을 사용해야합니다

모든 MySQL 5.6 기반 자료

--extra-partition-info ,

-p

파티션에 대한 정보를 표시합니다

모든 MySQL 5.6 기반 자료

--retries=# #

-r

연결을 재 시도하는 횟수 (1 초 간격)

모든 MySQL 5.6 기반 자료

--table=tbl_name ,

-t

인덱스를 찾아 테이블을 지정합니다. 이 옵션을 사용하면 -p 및 -n은 효과가 없으며 무시됩니다.

모든 MySQL 5.6 기반 자료

--unqualified ,

-u

정규화되지 않은 테이블 이름을 사용합니다

모든 MySQL 5.6 기반 자료


  • --blob-info , -b

    종속 BLOB 및 TEXT 컬럼에 대한 정보를 포함합니다.

    이 옵션을 사용하는 경우 --extra-partition-info ( -p ) 옵션을 사용해야합니다.

  • --database= db_name , -d

    테이블이 발견 될 데이터베이스를 지정합니다.

  • --extra-node-info , -n

    테이블 파티션 및 그들이 존재하는 데이터 노드 매핑에 대한 정보를 포함합니다. 이 정보는 배포 인식 메커니즘을 검증하기 위해, 그리고 MySQL Cluster에 저장되어있는 데이터에 대한보다 효율적인 애플리케이션 액세스를 지원하는 데 유용합니다.

    이 옵션을 사용하는 경우 --extra-partition-info ( -p ) 옵션을 사용해야합니다.

  • --extra-partition-info , -p

    테이블 파티션에 대한 추가 정보를 출력합니다.

  • --retries= # , -r

    연결을 중단하기 전에이 횟수만큼 연결을 시도합니다. 연결 시도가 1 초 간격으로 실행됩니다.

  • --table= tbl_name , -t

    인덱스를 찾아 테이블을 지정합니다.

  • --unqualified , -u

    정규화되지 않은 테이블 이름을 사용합니다.


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