Rails

【AWS】本番環境のデータベースの中身を表示・閲覧する方法

AWS

 

今回は、本番環境のデータベースに格納されている情報を表示・閲覧する方法を紹介したいと思います。基本的にローカル環境での操作と変わらないため、思い出しながら進めていきましょう。

Sequel Proと呼ばれるデータベース可視化ツールを導入してれば、より簡単にできるね。

本番環境のデータベースの操作

では実際に行っていきましょう。まずは以下のコマンドでEC2にログインします。

↓ ターミナル(ローカル)

$ cd .ssh
$ ssh -i ダウンロードした鍵の名前.pem ec2-user@作成したEC2インスタンスと紐付けたElastic IP

 

EC2にログインができたら、MySQLにアクセスします。以下のコマンドを入力するとパスワードが求められるので、設定したパスワードを打ち込みましょう。

↓ ターミナル(EC2)

[ec2-user@ip-172-31-23-189 ~]$ mysql -u root -p

 

このような画面になればアクセス成功です。

MySQLパスワード

 

MySQLのパスワード設定についてはこちらの記事を参考にしてください。

AWS
【AWS環境構築】本番環境にMySQL5.6をインストールする方法MySQLをインストールする方法とMySQLのrootユーザーのパスワードを設定する方法を紹介しています。EC2サーバーの環境構築はかなりハードですが、1つ1つ焦らず進めていきましょう。...

 

MySQLにアクセスできたら、「show databases;」と入力することで本番環境にあるデータベースを確認することができます。

↓ ターミナル(EC2)

mysql> show databases;
+-----------------------------------+
| Database                          |
+-----------------------------------+
| information_schema                |
| chat_sample_production            |
| mysql                             |
| performance_schema                |
+-----------------------------------+  

 

その中から見たいデータベースを選択します。その後「show tables;」と入力すると、そのデータベースの中にあるテーブル一覧が表示されます。

↓ ターミナル(EC2)

mysql> use chat_sample_production;

mysql> show tables;
+---------------------------------------------+
| Tables_in_freemarket_sample_production      |  
+---------------------------------------------+
| ar_internal_metadata                        |
| messages                                    |
| categories                                  |
| members                                     |
| items                                       |
| schema_migrations                           |
| sessions                                    |
| users                                       |
+---------------------------------------------+

 

今回はその中でもusersテーブルを表示してみます。以下のコマンドを打ちましょう。

↓ ターミナル(EC2)

mysql> select * from users;
+----+-----------------+---------------------+---------------------+
| id | name            | created_at          | updated_at          |
+----+-----------------+---------------------+---------------------+
|  1 | 田中             | 2019-07-15 00:00:00 | 2019-07-15 00:00:00 |
|  2 | 山田             | 2019-07-15 00:00:00 | 2019-07-15 00:00:00 |
|  3 | 千葉             | 2019-07-15 00:00:00 | 2019-07-15 00:00:00 |
+----+-----------------+---------------------+---------------------+
「*」は「全て」という意味です。

これで本番環境のデータベースの中身を見ることができましたね。

番外編

本番環境のデータをこのまま削除することも可能です。その場合は、以下のようにdeleteコマンドで実行することができます。

↓ ターミナル(EC2)

mysql> select * from users;
+----+-----------------+---------------------+---------------------+
| id | name            | created_at          | updated_at          |
+----+-----------------+---------------------+---------------------+
|  1 | 田中             | 2019-07-15 00:00:00 | 2019-07-15 00:00:00 |
|  2 | 山田             | 2019-07-15 00:00:00 | 2019-07-15 00:00:00 |
|  3 | 千葉             | 2019-07-15 00:00:00 | 2019-07-15 00:00:00 |
+----+-----------------+---------------------+---------------------+

mysql> delete from users;

まとめ

  • mysql -u root -pで本番環境のMySQLにアクセスできる
  • 本番環境のデータベースを見る大まかな流れは「show databases;」→「データベースを選択」→「show tables;」→「テーブルを選択」である

 

 

今回は本番環境のデータベースに格納されている情報を表示・閲覧する方法を解説しました。データベースってどうやって操作するんだっけ?となった場合の参考になればと思います。