Lindorm ワイドテーブルエンジンは、MySQL プロトコル経由のアクセスをサポートしています。MySQL エコシステムのクライアントを使用して Lindorm ワイドテーブルエンジンに接続して利用できます。このトピックでは、MySQL プロトコルの使用上の注意と関連事項について説明します。
使用上の注意
ワイドテーブルエンジンは、バージョン 2.6.0 以降で MySQL プロトコルをサポートしています。現在のバージョンを確認またはアップグレードするには、LindormTable リリースノートおよびLindorm インスタンスのマイナーエンジンバージョンのアップグレードをご参照ください。
Lindorm ワイドテーブルエンジンがサポートする SQL 構文は、MySQL 構文と完全な互換性があるわけではありません。Lindorm ワイドテーブルエンジンがサポートする SQL 構文については、SQL リファレンスをご参照ください。
有効化ガイド
MySQL 互換プロトコル機能を有効にするには、MySQL クライアントを使用した LindormTable への接続と使用をご参照ください。
考慮事項
デフォルトでは、Lindorm の MySQL プロトコルは SSL 通信暗号化を無効にしています。SSL 暗号化接続を使用するには、MySQL プロトコル SSL 暗号化ガイドをご参照ください。
SSL 暗号化接続を確立する際、一部の古いクライアントでは、より低い TLS プロトコルバージョン (例:1.0 または 1.1) が使用されることがあります。これにより、接続に失敗し、プロトコルバージョンに関連する例外が発生する可能性があります。この場合、以下のいずれかの方法で解決できます:
平文通信を使用して直接接続を確立します。
クライアントが TLS プロトコルバージョンの指定をサポートしている場合 (たとえば、MySQL JDBC 5.1.44 は接続パラメータ
enabledTLSProtocolsで TLS バージョンを指定できます)、TLS プロトコルバージョンを 1.2 に設定することで問題を解決できます。クライアントのバージョンをアップグレードします。MySQL 8.0 以降のクライアントを使用することを推奨します。
異なるバージョンのワイドテーブルエンジンで作成されたユーザーは、使用できるプロトコルが異なります。実際の状況に応じて、適切な認証プロトコルを選択してください:
バージョン 2.6.2 未満のワイドテーブルエンジンで作成されたユーザーは、
caching_sha2_passwordプロトコルのみを使用できます。バージョン 2.6.2 以降のワイドテーブルエンジンで作成されたユーザーは、
caching_sha2_passwordとmysql_native_passwordの両方の認証プロトコルを使用できます。まずcaching_sha2_passwordプロトコルを使用することを推奨します。
たとえば、ワイドテーブルエンジンのバージョンが 2.5.4 のときにユーザー「user」を作成し、その後マイナーバージョンをアップグレードしてエンジンをバージョン 2.6.2 以降にしてから新しいユーザー「test」を作成した場合、ユーザー「user」は
caching_sha2_passwordプロトコルのみを使用できますが、ユーザー「test」はmysql_native_passwordとcaching_sha2_passwordの両方の認証プロトコルを使用できます。
MySQL プロトコルの互換性
MySQL プロトコルには複数のサブプロトコルが含まれています。Lindorm でのサポート状況は次のとおりです:
接続ライフサイクル | サブプロトコル名 | プロトコルコマンド | サポート状況 | 機能と説明 |
接続フェーズ | ハンドシェイク | サポート済み | 接続確立前のハンドシェイクネゴシエーション。現在、HandshakeV10 プロトコル のみがサポートされています。 | |
TLS サポート | サポート済み | TLS 通信暗号化のサポート。現在、TLSv1.2 プロトコル のみがサポートされています。 説明 デフォルトでは、Lindorm は SSL 暗号化通信を無効にしています。有効にするには、MySQL プロトコル SSL 暗号化ガイドをご参照ください。 | ||
認証方式 | old_password | 非サポート | レガシーなパスワード転送プロトコルです。つまり、古い MySQL クライアント (例:4.x 以前) からのユーザー認証リクエストです。 | |
mysql_clear_password | サポート済み | 平文パスワード転送プロトコルです。 重要 通常、SSL 通信暗号化と併用する必要があります。 | ||
mysql_native_password | サポート済み | MySQL 5.x クライアントが使用するデフォルトのパスワード暗号化通信プロトコルです。 | ||
caching_sha2_password | サポート済み | MySQL 8.x クライアントが使用するデフォルトのパスワード暗号化通信プロトコルです。 | ||
コマンドフェーズ | テキストプロトコル | COM_QUERY | サポート済み | SQL ステートメントを直接送信して実行します。 |
ユーティリティコマンド | COM_QUIT | サポート済み | サーバーから切断します。 | |
COM_INIT_DB | サポート済み | 現在の接続のデフォルトデータベースを変更します。 | ||
COM_PING | サポート済み | クライアントとサーバー間の接続性を確認します。 | ||
COM_DEBUG | 非サポート | サーバーの内部デバッグ情報を表示します。つまり、Lindorm への接続中に SQL を実行してサーバー側のデバッグ情報を取得することです。 | ||
COM_CHANGE_USER | 非サポート | 現在の接続のユーザーを切り替えます。 | ||
COM_RESET_CONNECTION | 非サポート | Lindorm への接続時に、現在の接続のセッション状態をリセットします。 | ||
COM_SET_OPTION | 非サポート | クライアントの接続オプションを設定します。つまり、Lindorm への接続時にクライアント接続セッションの動作と設定を変更することです。 | ||
プリペアドステートメント | COM_STMT_PREPARE | サポート済み | パラメータ付きクエリを前処理します。 | |
COM_STMT_EXECUTE | サポート済み | パラメータをバインドし、プリペアドステートメントを実行します。 | ||
COM_STMT_FETCH | 非サポート | Lindorm で、埋め込みSQLの FETCH ステートメントを使用します。 | ||
COM_STMT_CLOSE | サポート済み | プリペアドステートメントを閉じます。 | ||
COM_STMT_SEND_LONG_DATA | 非サポート | ラージオブジェクトデータを送信するためのコマンドです。 | ||
レプリケーションプロトコル | 非サポート | MySQL のバイナリログ (binlog) レプリケーションプロトコルです。 | ||