MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  ...  /  ndb_drop_index — NDB テーブルからのインデックスの削除

23.4.10 ndb_drop_index — NDB テーブルからのインデックスの削除

ndb_drop_index は、指定されたインデックスを NDB テーブルから削除します。 このユーティリティーは、NDB API アプリケーションを記述するための例としてのみ使用することをお勧めします。詳細は、このセクションで後述する「警告」を参照してください。

使用法

ndb_drop_index -c connection_string table_name index -d db_name

上記のステートメントは、databasetable から index という名前のインデックスを削除します。

次の表には、ndb_drop_index に固有のオプションが含まれています。 追加説明が表のあとにあります。 ほとんどの NDB Cluster プログラム (ndb_drop_index を含む) に共通のオプションについては、セクション23.4.32「NDB Cluster プログラムに共通のオプション — NDB Cluster プログラムに共通のオプション」 を参照してください。

表 23.32 プログラムで使用されるコマンドライン・オプション ndb_drop_index

形式 説明 追加、非推奨、または削除された

--database=dbname,

-d

テーブルが見つかったデータベースの名前

(MySQLに基づくすべてのNDBリリースでサポート 8.0)


警告

NDB API を使用して Cluster テーブルインデックスに操作を実行しても、MySQL は認識できず、MySQL サーバーはそのテーブルを使用できません。 このプログラムを使用してインデックスを削除し、SQL ノードからテーブルにアクセスしようとすると、次のようなエラーが発生します。

shell> ./ndb_drop_index -c localhost dogs ix -d ctest1
Dropping index dogs/idx...OK

NDBT_ProgramExit: 0 - OK

shell> ./mysql -u jon -p ctest1
Enter password: *******
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7 to server version: 5.7.33-ndb-7.5.21

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> SHOW TABLES;
+------------------+
| Tables_in_ctest1 |
+------------------+
| a                |
| bt1              |
| bt2              |
| dogs             |
| employees        |
| fish             |
+------------------+
6 rows in set (0.00 sec)

mysql> SELECT * FROM dogs;
ERROR 1296 (HY000): Got error 4243 'Index not found' from NDBCLUSTER

そのような場合、MySQL でテーブルをふたたび使用できるようにする唯一の方法は、テーブルを削除して再作成することです。 テーブルを削除するには、SQL ステートメント DROP TABLE または ndb_drop_table ユーティリティー (セクション23.4.11「ndb_drop_table — NDB テーブルの削除」を参照してください) を使用できます。


関連キーワード:  NDB, テーブル, ndbinfo, ndb, ノード, 削除, 構成, 管理, データ, インストール