環境
Ruby on rails 6.1.4
ruby 2.6.5
capistrano
mariaDB 5.5.68
経緯
AWSのEC2を使った環境構築をしています。
capistranoを使い自動デプロイを完了しています。
ローカル環境ではSequel Proを使っていたので、ローカルで保存した情報はすぐ確認することができました。
しかし、本番環境のデータベースの中身を確認する方法がわからず。
素人丸出しの「mariaDB 中身 確認」だとかで検索しましたが出てくるのは「select * from モデル名で中身見れますよ〜」ばかりでした。(初心者すぎて調べ方が分かっていない)
そもそもDBにたどり着く方法がわからず悩んでいたのですが、なんとか辿り着けたので備忘録を兼ねて記事に残そうと思います。
コード
ターミナル内
まずEC2へログインします
#ホームディレクトリに移動
xxxx@yyyynoAir ~ % cd
#sshディレクトリに移動
xxxx@yyyynoAir ~ % cd .ssh/
#EC2へログイン(ssh -i ダウンロードした鍵の名前.pem ec2-user@作成したEC2インスタンスに紐付けたElastic IP)
xxxx@yyyynoAir .ssh % ssh -i 0000xxxx.pem ec2-user@12.345.67.890
#ログインできればEC2のロゴ?が出現します
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
ログイン後
#currentディレクトリに移動
[ec2-user@ip-123-45-67-8 ~]$cd /var/www/アプリケーション名/current
#mysqlへアクセスするコマンドを入力
[ec2-user@ip-123-45-67-8 current]mysql -u root -p アプリケーション名_production
#パスワードを求められるので入力(見た目上は何も表示されませんが入力されているので完了後enterを押す)
Enter password:
#DBの中に入っているので、select文を使って検索する
MariaDB [アプリケーション名_production]> select * from stores \G;
流れとしては上記の通りです。
mysqlのパスワードがわからない方はEC2内のホームディレクトリ[ec2-user@ip-123-45-67-8 ~]へ戻ってもらい「env」と入力すればパスワードが確認できるはずです。
また、select文の\Gはターミナル上で表示されるデータが見やすくなる(抽象的ですいません)ので使っています。
以上です。
ローカルでのデータはすぐ目視で確認できていたので、いざ本番環境のデータを見るとなったときに「どこ見に行けばいいの?」と思ったので作成しました。
内容に不備がございましたらご指摘いただけますと幸いです。