Amazon RDS のデータベースプレビュー環境で MySQL 9.2 を評価出来るようになりました
いわさです。
Amazon RDS のプレビュー環境では MySQL イノベーションリリースを評価目的で使うことが出来ます。以前は MySQL 9.1 の評価方法を紹介しました。
このイノベーションリリースは四半期ごとにリリースされるのですが、前回から三ヶ月後ということで先日 MySQL 9.2 がリリースされました。
MySQL 9.2 インスタンスの作成と注意事項
作成方法は簡単で、RDS コンソールからオレゴンのプレビュー環境に遷移できるので、そこでエンジンバージョンを指定するだけです。
プレビュー環境の場合、次のように MySQL イノベーションリリースが選択でき、9.2.0 も追加されていました。
プレビュー環境には注意事項がいくつかありますので利用にあたってご注意ください。[1]
- 作成後60日で削除される
- サポートを受けることはできない
- 本番環境へのスナップショットコピーは不可
- クロスリージョンレプリカ、RDS Proxy などいくつかの機能はサポートされていない
パブリックアクセスを有効にして起動後、ローカルクライアントから接続してみます。
% mysql -h hoge0328mysql.ca0mg86saazc.us-east-2.rds-preview.amazonaws.com -u admin -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 15
Server version: 9.2.0 Source distribution
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
MySQL 9.2.0 ですね。ちなみに RDS MySQL は Community Edition になります。
FLUSH PRIVILEGES ステートメントが非推奨に
このアップデートに併せていつも最新バージョンでの変更点を確認し、その中のいくつかを実際に試したりしています。今回も何かやりたいな。
MySQL 9.2.0 のリリースノートはこちらです。
目立った新機能はないのですが、ちょっと気になるのが Deprecation and Removal Notes のところ。
FLUSH PRIVILEGES
ステートメントが非推奨になってますね。
現在は GRANT で権限付与を行うと思いますが、INSERT や DELETE で権限テーブルを更新することもできました。
その際にテーブル再ロードのためにFLUSH PRIVILEGES
ステートメントを実行する必要があります。
従来から権限テーブルの直接更新は非推奨だったと思いますが、FLUSH PRIVILEGES
で警告あるいはエラーが出るようになったみたいです。
以下 9.2 での実行結果です。
:
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected, 1 warning (0.19 sec)
mysql> SHOW WARNINGS;
+---------+------+---------------------------------------------------------------------------+
| Level | Code | Message |
+---------+------+---------------------------------------------------------------------------+
| Warning | 1681 | 'FLUSH PRIVILEGES' is deprecated and will be removed in a future release. |
+---------+------+---------------------------------------------------------------------------+
1 row in set (0.19 sec)
警告が出ていますね。
この状態になったら近い将来のバージョンでステートメント自体が削除されます。随分前から推奨されなくなっているので多くないと思いますが、こちらを使っている処理がある場合は見直しておきましょう。
ちなみに MySQL 9.1 時点では特に警告などは発生していませんでした。
% mysql -h hoge0328mysql2.ca0mg86saazc.us-east-2.rds-preview.amazonaws.com -u admin -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 9.1.0 Source distribution
Copyright (c) 2000, 2024, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
:
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.20 sec)
mysql> SHOW WARNINGS;
Empty set (0.20 sec)
mysql>
さいごに
本日は Amazon RDS のデータベースプレビュー環境で MySQL 9.2 を評価出来るようになったので少し触ってみました。
MySQL 9.2 を一時的に検証したい方は手軽に使えるのでプレビュー環境を試してみてください。
私自身はFLUSH PRIVILEGES
を使ったことなかったのですが、イノベーションリリースをキャッチアップしておくとこういった非推奨や廃止の状況も把握できるので良いですね。