すべてのプロダクト
Search
ドキュメントセンター

Lindorm:MySQL プロトコルの開発ノート

最終更新日:Sep 23, 2026

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 クライアントが使用するデフォルトのパスワード暗号化通信プロトコルです。mysql_native_password よりも安全で効率的です。推奨します。

コマンドフェーズ

テキストプロトコル

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

非サポート

ラージオブジェクトデータを送信するためのコマンドです。COM_STMT_EXECUTE の前に実行されます。

レプリケーションプロトコル

非サポート

MySQL のバイナリログ (binlog) レプリケーションプロトコルです。