21.4.25 ndb_select_all — Print Rows from an NDB Table

ndb_select_all prints all rows from an NDB table to stdout.

Usage

ndb_select_all -c connection_string tbl_name -d db_name [> file_name]

The following table includes options that are specific to the NDB Cluster native backup restoration program ndb_select_all. Additional descriptions follow the table. For options common to most NDB Cluster programs (including ndb_select_all), see Section 21.4.32, “Options Common to NDB Cluster Programs — Options Common to NDB Cluster Programs”.

Table 21.258 Command-line options for the ndb_select_all program

Format Description Added, Deprecated, or Removed

--database=dbname,

-d

Name of database in which table is found

(Supported in all MySQL 5.7 based releases)

--parallelism=#,

-p

Degree of parallelism

(Supported in all MySQL 5.7 based releases)

--lock=#,

-l

Lock type

(Supported in all MySQL 5.7 based releases)

--order=index,

-o

Sort resultset according to index having this name

(Supported in all MySQL 5.7 based releases)

--descending,

-z

Sort resultset in descending order (requires --order)

(Supported in all MySQL 5.7 based releases)

--header,

-h

Print header (set to 0|FALSE to disable headers in output)

(Supported in all MySQL 5.7 based releases)

--useHexFormat,

-x

Output numbers in hexadecimal format

(Supported in all MySQL 5.7 based releases)

--delimiter=char,

-D

Set column delimiter

(Supported in all MySQL 5.7 based releases)

--disk

Print disk references (useful only for Disk Data tables having nonindexed columns)

(Supported in all MySQL 5.7 based releases)

--rowid

Print row ID

(Supported in all MySQL 5.7 based releases)

--gci

Include GCI in output

(Supported in all MySQL 5.7 based releases)

--gci64

Include GCI and row epoch in output

(Supported in all MySQL 5.7 based releases)

--tupscan,

-t

Scan in tup order

(Supported in all MySQL 5.7 based releases)

--nodata

Do not print table column data

(Supported in all MySQL 5.7 based releases)


  • --database=dbname, -d dbname

    Name of the database in which the table is found. The default value is TEST_DB.

  • parallelism=#, -p #

    Specifies the degree of parallelism.

  • --lock=lock_type, -l lock_type

    Employs a lock when reading the table. Possible values for lock_type are:

    • 0: Read lock

    • 1: Read lock with hold

    • 2: Exclusive read lock

    There is no default value for this option.

  • --order=index_name, -o index_name

    Orders the output according to the index named index_name.

    Note

    This is the name of an index, not of a column; the index must have been explicitly named when created.

  • --descending, -z

    Sorts the output in descending order. This option can be used only in conjunction with the -o (--order) option.

  • --header=FALSE

    Excludes column headers from the output.

  • --useHexFormat -x

    Causes all numeric values to be displayed in hexadecimal format. This does not affect the output of numerals contained in strings or datetime values.

  • --delimiter=character, -D character

    Causes the character to be used as a column delimiter. Only table data columns are separated by this delimiter.

    The default delimiter is the tab character.

  • --disk

    Adds a disk reference column to the output. The column is nonempty only for Disk Data tables having nonindexed columns.

  • --rowid

    Adds a ROWID column providing information about the fragments in which rows are stored.

  • --gci

    Adds a GCI column to the output showing the global checkpoint at which each row was last updated. See Section 21.1, “NDB Cluster Overview”, and Section 21.5.3.2, “NDB Cluster Log Events”, for more information about checkpoints.

  • --gci64

    Adds a ROW$GCI64 column to the output showing the global checkpoint at which each row was last updated, as well as the number of the epoch in which this update occurred.

  • --tupscan, -t

    Scan the table in the order of the tuples.

  • --nodata

    Causes any table data to be omitted.

Sample Output

Output from a MySQL SELECT statement:

mysql> SELECT * FROM ctest1.fish;
+----+-----------+
| id | name      |
+----+-----------+
|  3 | shark     |
|  6 | puffer    |
|  2 | tuna      |
|  4 | manta ray |
|  5 | grouper   |
|  1 | guppy     |
+----+-----------+
6 rows in set (0.04 sec)

Output from the equivalent invocation of ndb_select_all:

shell> ./ndb_select_all -c localhost fish -d ctest1
id      name
3       [shark]
6       [puffer]
2       [tuna]
4       [manta ray]
5       [grouper]
1       [guppy]
6 rows returned

NDBT_ProgramExit: 0 - OK

All string values are enclosed by square brackets ([...]) in the output of ndb_select_all. For another example, consider the table created and populated as shown here:

CREATE TABLE dogs (
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(25) NOT NULL,
    breed VARCHAR(50) NOT NULL,
    PRIMARY KEY pk (id),
    KEY ix (name)
)
TABLESPACE ts STORAGE DISK
ENGINE=NDBCLUSTER;

INSERT INTO dogs VALUES
    ('', 'Lassie', 'collie'),
    ('', 'Scooby-Doo', 'Great Dane'),
    ('', 'Rin-Tin-Tin', 'Alsatian'),
    ('', 'Rosscoe', 'Mutt');

This demonstrates the use of several additional ndb_select_all options:

shell> ./ndb_select_all -d ctest1 dogs -o ix -z --gci --disk
GCI     id name          breed        DISK_REF
834461  2  [Scooby-Doo]  [Great Dane] [ m_file_no: 0 m_page: 98 m_page_idx: 0 ]
834878  4  [Rosscoe]     [Mutt]       [ m_file_no: 0 m_page: 98 m_page_idx: 16 ]
834463  3  [Rin-Tin-Tin] [Alsatian]   [ m_file_no: 0 m_page: 34 m_page_idx: 0 ]
835657  1  [Lassie]      [Collie]     [ m_file_no: 0 m_page: 66 m_page_idx: 0 ]
4 rows returned

NDBT_ProgramExit: 0 - OK

首页