ndb_select_all は、NDB
テーブルのすべての行を stdout
に出力します。
使用法
ndb_select_all -c connect_string tbl_name -d db_name [> file_name]
次の表には、MySQL Cluster ネイティブバックアップリストアプログラム ndb_select_all に固有のオプションが含まれています。追加説明が表のあとにあります。ほとんどの MySQL Cluster プログラム (ndb_select_all を含む) に共通するオプションについては、セクション18.4.27「MySQL Cluster プログラムに共通するオプション — MySQL Cluster プログラムに共通するオプション」を参照してください。
表 18.91 この表は、ndb_select_all プログラムのコマンド行オプションについて説明しています
形式 | 説明 | 追加または削除 |
---|---|---|
テーブルを探すデータベースの名前 |
すべての MySQL 5.6 ベースリリース |
|
並列性の度合い |
すべての MySQL 5.6 ベースリリース |
|
ロックタイプ |
すべての MySQL 5.6 ベースリリース |
|
指定された名前のインデックスに従って結果セットをソートします |
すべての MySQL 5.6 ベースリリース |
|
結果セットを降順にソートします (順序フラグが必要となります) |
すべての MySQL 5.6 ベースリリース |
|
ヘッダーを出力します (出力でヘッダーを無効にするには 0|FALSE を設定します) |
すべての MySQL 5.6 ベースリリース |
|
数値を 16 進形式で出力します |
すべての MySQL 5.6 ベースリリース |
|
カラム区切り文字を設定します |
すべての MySQL 5.6 ベースリリース |
|
ディスク参照を出力します (インデックスが設定されていないカラムを持つディスクデータテーブルでのみ役に立ちます) |
すべての MySQL 5.6 ベースリリース |
|
ROWID を出力します |
すべての MySQL 5.6 ベースリリース |
|
出力に GCI を含めます |
すべての MySQL 5.6 ベースリリース |
|
出力に GCI および行エポックを含めます |
すべての MySQL 5.6 ベースリリース |
|
TUP 順序でスキャンします |
すべての MySQL 5.6 ベースリリース |
|
テーブルカラムデータを出力しません |
すべての MySQL 5.6 ベースリリース |
-
テーブルが見つかるデータベースの名前。デフォルト値は
TEST_DB
です。 -
並列の度合いを指定します。
-
テーブルを読み取るときにロックを適用します。
lock_type
に指定できる値を次に示します。0
: 読み取りロック1
: ホールド付きの読み取りロック2
: 排他的読み取りロック
このオプションにはデフォルト値はありません。
-
--order=
、index_name
-o
index_name
index_name
という名前のインデックスの順序で出力します。これはカラム名ではなくインデックス名であり、インデックスは作成時に明示的に名前が付けられている必要があります。 -
出力を降順でソートします。このオプションは、
-o
(--order
) オプションを指定した場合にのみ使用できます。 -
出力からカラムヘッダーを除外します。
-
すべての数値を 16 進数形式で表示します。これは文字列または日時値に含まれている数値の出力には影響しません。
-
--delimiter=
、character
-D
character
character
をカラム区切り文字として使用します。この区切り文字で区切られるのはテーブルデータカラムのみです。デフォルトの区切り文字はタブ文字です。
-
出力にディスクリファレンスカラムを追加します。このカラムが空でないのは、インデックスが設定されていないカラムを持つディスクデータテーブルの場合だけです。
-
行が保存されるフラグメントに関する情報を示す
ROWID
カラムを追加します。 -
各行が最後に更新されたグローバルチェックポイントを示す
GCI
カラムを出力に追加します。チェックポイントに関する詳細は、セクション18.1「MySQL Cluster の概要」およびセクション18.5.6.2「MySQL Cluster ログイベント」を参照してください。 -
各行が最後に更新されたグローバルチェックポイントおよびこの更新が発生したエポックの数を示す
ROW$GCI64
カラムを出力に追加します。 -
タプルの順序でテーブルをスキャンします。
-
テーブルデータを省きます。
出力例
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 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