ndb_select_all —从NDB表中打印行
ndb_select_all将NDB
表中的所有行打印到stdout
。
用法
ndb_select_all -c connection_string tbl_name -d db_name [> file_name]
下表包含特定于NDB Cluster本机备份还原程序ndb_select_all的选项。附加说明如下表。有关大多数NDB群集程序(包括ndb_select_all)通用的选项,请参见“ NDB群集程序的通用选项— NDB群集程序的通用选项”。
ndb_select_all程序的命令行选项
格式 | 描述 | 添加,不建议使用或删除 |
---|---|---|
| 在其中找到表的数据库的名称 | (在所有基于MySQL 8.0的版本中受支持) |
| 并行度 | (在所有基于MySQL 8.0的版本中受支持) |
| 锁类型 | (在所有基于MySQL 8.0的版本中受支持) |
| 根据提供名称的索引对结果集进行排序 | (在所有基于MySQL 8.0的版本中受支持) |
| 对结果集按降序排序(需要顺序标记) | (在所有基于MySQL 8.0的版本中受支持) |
| 打印标题(设置为0 | FALSE以禁用输出中的标题) | (在所有基于MySQL 8.0的版本中受支持) |
| 以十六进制格式输出数字 | (在所有基于MySQL 8.0的版本中受支持) |
| 设置列定界符 | (在所有基于MySQL 8.0的版本中受支持) |
| 打印磁盘引用(仅适用于具有未索引列的磁盘数据表) | (在所有基于MySQL 8.0的版本中受支持) |
| 打印行号 | (在所有基于MySQL 8.0的版本中受支持) |
| 在输出中包含GCI | (在所有基于MySQL 8.0的版本中受支持) |
| 在输出中包含GCI和行纪元 | (在所有基于MySQL 8.0的版本中受支持) |
| 按顺序扫描 | (在所有基于MySQL 8.0的版本中受支持) |
| 不打印表格列数据 | (在所有基于MySQL 8.0的版本中受支持) |
--database=dbname
,-d
dbname
在其中找到表的数据库的名称。默认值为
TEST_DB
。parallelism=#
,-p
#
指定并行度。
--lock=lock_type
,-l lock_type
读取表时使用锁。可能的值为
lock_type
:0
:读锁1
:按住锁定读2
:独占读锁
此选项没有默认值。
--order=index_name
,-o index_name
根据名为的索引对输出进行排序
index_name
。注意
这是索引的名称,而不是列的名称;索引在创建时必须已明确命名。
--descending
,-z
按降序对输出进行排序。此选项只能与
-o
(--order
)选项一起使用。--header=FALSE
从输出中排除列标题。
--useHexFormat
-x
使所有数值以十六进制格式显示。这不会影响字符串或日期时间值中包含的数字的输出。
--delimiter=character
,-D character
使
character
要用作一列分隔符。此分隔符仅分隔表数据列。默认的分隔符是制表符。
--disk
将磁盘参考列添加到输出中。该列仅对具有未索引列的“磁盘数据”表为非空。
--rowid
添加一
ROWID
列,该列提供有关存储行的片段的信息。--gci
GCI
在输出中添加一列,以显示每行最后更新的全局检查点。有关检查点的更多信息,请参见“ NDB群集概述”和“ NDB群集日志事件”。--gci64
ROW$GCI64
在输出中添加一列,该列显示最后更新每行的全局检查点以及此更新发生的时期数。--tupscan
,-t
按元组的顺序扫描表。
--nodata
导致省略任何表数据。
样本输出
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的输出中,所有字符串值都用方括号([
...]
)括起来。对于另一个示例,请考虑如下所示创建和填充的表:
CREATE TABLE dogs ( id INT(11) NOT NULLAUTO_INCREMENT ,name VARCHAR(25) NOT NULL, breed VARCHAR(50) NOT NULL,PRIMARY KEY pk (id),KEY ix (name ) )TABLESPACE tsSTORAGE DISK ENGINE =NDBCLUSTER ;INSERT INTO dogsVALUES ('', '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