MySQLで自分に付与されている権限を確認する

分析を仕事にしているので、普段DBを触るときは SELECT しかしませんが、
諸事情ありまして、テーブルの作成やテーブル定義の変更を試す必要が発生しました。
なお、DBはMySQL。管理者は別チームです。

問題になるのが、自分のユーザーでCREATE TABLEやALTER TABLEの権限を持っているかどうかです。

調べたところ次のクエリで現在のユーザーの権限を確認できました。


SHOW GRANTS;
-- 結果は省略

ドキュメントはこちら:13.7.5.22 SHOW GRANTS 構文
FOR で指定すれば他のユーザーの権限を確認する事もできるようです。

CREATEもALTERもできることがわかりましたが、権限付与されていたら何をやってもいいというわけでもないので、
一応DBを管理しているチームに一声かけて作業を進めました。

LightsailのMySQLに接続する

このブログはAWSのLightsailを使って構築しています。
ちょっと訳あって、そのサーバーのDB(MySQL)に接続したくなったのですが、
少しつまずいたのでメモです。

mysqlは勝手に構築してくれているので初期パスワードに何が設定されているのか、わかりませんでした。

結論から言うと
user : root
pass : bitnami_application_password ファイルの中身
で接続できます。
このwordpressの管理画面と同じ初期パスワードだったんですね。

わかるまで、サーバーにログインし、

\$ mysql
\$ mysql -u user
\$ mysql -u root
など試しましたが、ログインできず。

パスワードとして心当たりがあるのが管理画面のパスワードだけだったので、

\$ mysql -u root -p
とコマンドを打った後、bitnami_application_passwordの中身を入力したら接続できました。

念のため設定変えておこう。