GCPを使おう
とにかくめちゃくちゃ速いらしい。
管理はGoogleがやってくれて安心。
・MYSQL
・PostgreSQL
の2つを選択可能。
速度はどうなの?
まず、レイテンシー(サーバー同士の反応速度)を計測してみよう。
conoha 、 gcp 共に東京リージョンを選択。
conoha から gcp へ
curl -kL ‘35.99.127.199’ -o /dev/null -w “%{http_code}\t%{time_total}” 2> /dev/null
GCPへ 0.125秒
同じCONOHA同士へ 0.126秒
2回目以降は 0.01~0.06とほぼおなじレイテンシー。
レイテンシーは気にしなくても良いレベル
sqlはどっちが速いの?
約80万行レコードのテーブルで
インデックスを貼っていない ip 列で。ソート。
SELECT
SQL_NO_CACHE *
FROM
mes
ORDER BY
`ip` DESC
LIMIT
5;
conoha 8GB (自作mariaDB 10.2)
1673 ms
GCP 3GBプラン デフォルト
計測していないけど、遅い。
GCP 7.5GBプラン
1243 ms
GCP 15GBプラン
589 ms
結局世の中、金。
早速使う
場所は東京なので asix-northeast1 を選択
データベースのフラグ
character_set_server
utf8mb4
default_time_zone
+09:00
コマンドラインから使う
mysqlデータをエクスポートする場合は、cmder というアプリでmysqlのパスを通して使うと良い。
mysql -h 35.129.127.121 -u root -p
みたいな感じで。
バックアップ復元
ストレージを作成
nearline にしておき、そこにSQLデータをアップロード。
GUIから行う。
データベース名は ハイフンが使えないので注意。
phpmyadmin 使えるの?
使えません。
heidisql という windows クライアントを使おう。
レプリカについて
フェイルオーバーする時、マスターインスタンスに接続するサービスは30秒ほどダウンタイムが発生します。
フェイルオーバーする時、リードレプリカも再作成されます。
リードレプリカが再作成されるため、リードレプリカに接続するサービスは1分ほどダウンタイムが発生します。
また、アクセス数で1台でスッ壊れるようなものだと、2台あってももう一台がスッ壊れるので、
2台構成ではなく、3台以上の構成をすること。