シングルユーザーモードにより、データベース管理者はデータベースシステムへのアクセスを、MySQL サーバー (SQL ノード) や ndb_restore のインスタンスなど単一の API ノードに制限できます。 シングルユーザーモードに入ると、その他のすべての API ノードへの接続が正常に閉じられ、実行中のトランザクションがすべて中止されます。 新しいトランザクションの開始は許可されません。
クラスタがシングルユーザーモードに入ると、指定された API ノードにのみデータベースへのアクセス権が付与されます。
ndb_mgm クライアントで ALL STATUS
コマンドを使用すると、クラスタがシングルユーザーモードに入ったタイミングを確認できます。 また、ndbinfo.nodes
テーブルの status
カラムをチェックすることもできます (詳細は、セクション23.5.14.38「ndbinfo nodes テーブル」を参照してください)。
例:
ndb_mgm> ENTER SINGLE USER MODE 5
このコマンドが実行され、クラスタがシングルユーザーモードに入ると、ノード ID が 5
の API ノードがクラスタのみに許可されたユーザーになります。
前述のコマンドで指定したノードは API ノードである必要があります。他のタイプのノードを指定しようとすると拒否されます。
前述のコマンドが呼び出されると、指定されたノードで実行されているすべてのトランザクションが中止され、接続が閉じられるため、サーバーを再起動する必要があります。
コマンド EXIT SINGLE USER MODE
は、クラスタデータノードの状態をシングルユーザーモードから通常モードに変更します。 接続を待機している (つまり、クラスタの準備ができ、使用可能になるまで待機している) MySQL サーバーなどの API ノードは、接続が再度許可されます。 単一ユーザーノードとして指定された API ノードは、状態の変更中および変更後も引き続き実行されます (まだ接続されている場合)。
例:
ndb_mgm> EXIT SINGLE USER MODE
シングルユーザーモードでの実行時にノードの障害を処理する際には、次の 2 つの方法が推奨されています。
-
方法 1:
シングルユーザーモードのトランザクションをすべて終了します
EXIT SINGLE USER MODE
コマンドを発行しますクラスタのデータノードを再起動します
-
方法 2:
シングルユーザーモードに入る前に、ストレージノードを再起動します。