はじめに
MySQLの「X Protocol」とは、MySQL 5.7.12 以降で実装された新しいクライアントプロトコルです。
ポート番号は33060/tcpを使用します。※設定で変更可
参考情報)
Understanding MySQL X (All Flavors)
MySQL8以降ではデフォルト有効、MySQL5.7ではデフォルト無効となっています。
MySQL5.7で有効にするにはX Pluginをインストールする必要があります。
この記事では、MySQL5.7でX Pluguinをインストールして、X Protocolを有効にする方法を記載します。
X Protocolの有効化
有効化の実施
X Protocolを有効化します。
手順はMySQL公式の手順を参照しました。
参考情報)
MySQL :: MySQL 5.7 Reference Manual :: 19.2 Setting Up MySQL as a Document Store
・MySQLに接続する # mysql -u root -p ・x pluginのインストール mysql> INSTALL PLUGIN mysqlx SONAME 'mysqlx.so'; ・x pluginのインストール確認 mysql> show plugins; +----------------------------+----------+--------------------+----------------------+---------+ | Name | Status | Type | Library | License | +----------------------------+----------+--------------------+----------------------+---------+ …(省略)… | mysqlx | ACTIVE | DAEMON | mysqlx.so | GPL | +----------------------------+----------+--------------------+----------------------+---------+
プラグインのインストールが終わると33060/tcpで待ち受けが開始されている
# ss -atnp | grep mysql LISTEN 0 70 *:33060 *:* users:(("mysqld",pid=28081,fd=49)) LISTEN 0 80 *:3306 *:* users:(("mysqld",pid=28081,fd=21))
動作確認
MySQL Shellを使って動作確認します。
参考情報)
MySQL :: MySQL Shell 8.0 :: 2.2 Linux への MySQL Shell のインストール
MySQL :: MySQL 8.0 リファレンスマニュアル :: 20.3.1 MySQL Shell
MySQL Shellをインストールする
# rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023 # yum install mysql-shell
mysqlshコマンドでX Protocolに接続し、SQLを実行してみます。
※SQL実行時は「\sql」でSQLモードに変更、終了は「\exit」
※不要な出力は記載を省略している
# mysqlsh root@localhost:33060 MySQL localhost:33060+ ssl JS > \sql MySQL localhost:33060+ ssl SQL > select now(); +---------------------+ | now() | +---------------------+ | 2024-03-16 19:41:07 | +---------------------+ MySQL localhost:33060+ ssl SQL > \exit Bye!