Documentation Home
MySQL Cluster NDB 6.1-7.1
Related Documentation Download this Excerpt
PDF (US Ltr) - 3.5Mb
PDF (A4) - 3.5Mb
EPUB - 1.2Mb
HTML Download (TGZ) - 1.2Mb
HTML Download (Zip) - 1.2Mb


MySQL Cluster NDB 6.1-7.1  /  MySQL Cluster Programs  /  ndb_select_all — Print Rows from an NDB Table

6.21 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 MySQL Cluster native backup restoration program ndb_select_all. Additional descriptions follow the table. For options common to most MySQL Cluster programs (including ndb_select_all), see Section 6.26, “Options Common to MySQL Cluster Programs — Options Common to MySQL Cluster Programs”.

Table 6.15 This table describes command-line options for the ndb_select_all program

Format Description Added or Removed

--database=dbname,

-d

Name of the database in which the table is found

All MySQL 5.1 based releases

--parallelism=#,

-p

Degree of parallelism

All MySQL 5.1 based releases

--lock=#,

-l

Lock type

All MySQL 5.1 based releases

--order=index,

-o

Sort resultset according to index whose name is supplied

All MySQL 5.1 based releases

--descending,

-z

Sort resultset in descending order (requires order flag)

All MySQL 5.1 based releases

--header,

-h

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

All MySQL 5.1 based releases

--useHexFormat,

-x

Output numbers in hexadecimal format

All MySQL 5.1 based releases

--delimiter=char,

-D

Set a column delimiter

All MySQL 5.1 based releases

--disk

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

All MySQL 5.1 based releases

--rowid

Print rowid

All MySQL 5.1 based releases

--gci

Include GCI in output

All MySQL 5.1 based releases

--gci64

Include GCI and row epoch in output

All MySQL 5.1 based releases

--tup,

-t

Scan in tup order

All MySQL 5.1 based releases

--nodata

Do not print table column data

All MySQL 5.1 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 Chapter 3, MySQL Cluster Overview, and Section 7.6.2, “MySQL 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
Note

In earlier MySQL Cluster NDB 7.0 and 7.1 releases, ndb_select_all did not print any output for NULL values as it did in MySQL Cluster NDB 6.3 and earlier release series. This issue was fixed in MySQL Cluster NDB 7.0.22 and MySQL Cluster NDB 7.1.11. (Bug #60045)


User Comments
Sign Up Login You must be logged in to post a comment.