このブログを作ったときから、ClearDBを使い続けていましたが、今年になって、Azure としてMySQLのマネージドサービスが出た(Preview)ということで、マイグレーションしてみました。
参考にしたのはこの記事
(ほぼそのまま)
https://azure.microsoft.com/ja-jp/blog/cleardb-migration-to-azure-database-for-mysql/
やったこと
- リンクの「https://dev.mysql.com/downloads/workbench/」からworkbenchをダウンロードしてインストール
- Azureポータル上から、ClearDBの接続文字列を拾い集める。ホスト名、ユーザー名、パスワード。
- workbenchを起動して、接続先を登録しておく。テスト接続成功でOK
- Azureで作っておいた Azure Database for MySQL の接続文字列を取得。ホスト名、ユーザー名、パスワード。
- 同様にworkbenchで接続する。このときポータル上から作業している端末のIPアドレスを許可するように設定する。「+自分の IP を追加」を選ぶと早い。
保存。
- あとは、最初の記事のようにマイグレーションウィザードと!
- しかし、途中クエリのタイムアウトエラーが起きたので、サーバーパラメーターの「long_query_time」を10から30に変更して何度かRetryして成功。
- WordPress側は、ルートにある「wp-config.php」を書き換えた
- しかし、SSL接続を強制しているため、接続エラーとなる。(一度Debugを有効にして確認した)
- そこで、「wp-config.php」に
define('MYSQL_CLIENT_FLAGS', MYSQL_CLIENT_SSL);
を追加して無事に完了
レスポンスは気持ち早くなったような気がしている。
何よりこの記事の画像にしているように、パフォーマンスをメトリックで確認できるので、使っていく中で適切なスケールとかも見えてきそうなところ。