21.4.25 ndb_select_all —从 NDBtable 中打印行
ndb_select_all将所有行从NDBtable 打印到stdout
。
Usage
ndb_select_all -c connection_string tbl_name -d db_name [> file_name]
下 table 包含特定于 NDB Cluster 本机备份还原程序ndb_select_all的选项。附加说明如下 table 所示。有关大多数 NDB 群集程序(包括ndb_select_all)共有的选项,请参见第 21.4.32 节“ NDB 群集程序的公用选项-NDB 群集程序的公用选项”。
table21.258 ndb_select_all 程序的命令行选项
Format | Description | 添加,不建议使用或删除 | |
---|---|---|---|
--database=dbname , | |||
-d | 在其中找到 table 的数据库名称 | (在所有基于 MySQL 5.7 的版本中受支持) | |
--parallelism=# ,-p | 并行度 | (在所有基于 MySQL 5.7 的版本中受支持) | |
--lock=# ,-l | 锁定类型 | (所有基于 MySQL 5.7 的版本均支持) | |
--order=index ,-o | 根据具有此名称的索引对结果集进行排序 | (所有基于 MySQL 5.7 的发行版均支持) | |
--descending ,-z | 按降序排列结果集(要求--order) | (在所有基于 MySQL 5.7 的版本中受支持) | |
--header ,-h | 打印标题(设置为 0 | FALSE 以禁用输出中的标题) | (在所有基于 MySQL 5.7 的版本中受支持) |
--useHexFormat ,-x | 以十六进制格式输出数字 | (所有基于 MySQL 5.7 的版本均支持) | |
--delimiter=char ,-D | 设置列定界符 | (在所有基于 MySQL 5.7 的版本中受支持) | |
--disk | 打印磁盘引用(仅适用于具有未索引列的磁盘数据 table) | (在所有基于 MySQL 5.7 的版本中受支持) | |
--rowid | 打印行 ID | (在所有基于 MySQL 5.7 的版本中受支持) | |
--gci | 在输出中包含 GCI | (在所有基于 MySQL 5.7 的版本中受支持) | |
--gci64 | 在输出中包括 GCI 和行纪元((在所有基于 MySQL 5.7 的版本中受支持) | ||
--tupscan ,-t | 按 tupSequences 扫描 | (所有基于 MySQL 5.7 的版本均支持) | |
--nodata | 请勿打印 table 列数据 | (在所有基于 MySQL 5.7 的发行版中受支持) |
在其中找到 table 的数据库的名称。默认值为TEST_DB
。
指定并行度。
读取 table 时使用锁。 * lock_type
*的可能值为:
-
0
:读锁-
1
:按住保持读锁 -
2
:排他读取锁定
-
此选项没有默认值。
根据名为* index_name
*的索引对输出进行排序。
Note
这是索引的名称,而不是列的名称;索引在创建时必须已明确命名。
按降序对输出进行排序。此选项只能与-o
(--order)选项结合使用。
从输出中排除列标题。
使所有数值以十六进制格式显示。这不会影响字符串或日期时间值中包含的数字的输出。
使* character
*用作列定界符。该分隔符仅分隔 table 数据列。
默认的分隔符是制 table 符。
将磁盘参考列添加到输出中。该列仅对具有未索引列的“磁盘数据”table 为非空。
添加一个ROWID
列,该列提供有关存储行的片段的信息。
在输出中添加GCI
列,以显示每行最后更新的全局检查点。有关检查点的更多信息,请参见第 21.1 节“ NDB 群集概述”和第 21.5.3.2 节“ NDB 群集日志事件”。
在输出中添加一个ROW$GCI64
列,该列显示最后更新每行的全局检查点以及此更新发生的时期数。
按 Tuples 的 Sequences 扫描 table。
导致省略任何 table 数据。
Sample Output
MySQL SELECT语句的输出:
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)
等效于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
在ndb_select_all的输出中,所有字符串值都用方括号([
... ]
)括起来。对于另一个示例,请考虑如下所示创建和填充的 table:
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');
这演示了几个其他ndb_select_all选项的使用:
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