質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Amazon RDS

Amazon RDSは、米アマゾン社が提供しているRDBMSサービス。クラウド上でのリレーショナルデータベースの構築および運用が可能です。MySQL/PostgreSQL/Oracle/SQL Serverのインストールを容易にすることができます。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

解決済

1回答

1256閲覧

RDSにレコードが保存されていない、、、

west_side_park

総合スコア45

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Amazon RDS

Amazon RDSは、米アマゾン社が提供しているRDBMSサービス。クラウド上でのリレーショナルデータベースの構築および運用が可能です。MySQL/PostgreSQL/Oracle/SQL Serverのインストールを容易にすることができます。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

0クリップ

投稿2019/08/03 13:58

AWSを使ってアプリケーションをデプロイしました。
今回データベースはRDSを使用しており、mysqlです。

EC2にssh接続して、railsコンソールでUserや他テーブルを作成し確認すると、保存されているのですが、
mysqlの方にはデータが登録されていません。
テーブル情報はmysqlの方にも保存されており、レコードのみ保存されていない状態です。

RDSに接続できていないとしたらテーブルも登録されていないと思うのですが、なぜレコードだけ保存されていないのかが不明です。

心当たりのある方がいらっしゃいましたら、ご教示お願いしたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

config/database.yml の設定がRDSに向いていないのでは?

投稿2019/08/03 21:36

winterboum

総合スコア23347

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

west_side_park

2019/08/04 07:57

winterboum様、ご回答ありがとうございます。 config/database.ymlを確認しました。 現在、下記に設定しています。 production: <<: *default database: skillmap adapter: mysql2 encoding: utf8mb4 collation: utf8mb4_general_ci host: RDSエンドポイント username: root password: パスワード ec2からRDSに接続し、show databases;を叩くと、 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | innodb | | mysql | | performance_schema | | skillmap | | sys | +--------------------+ 6 rows in set (0.00 sec) と表示され、こちらのskillmapの中にはテーブル情報だけ保存されている状態です。 AWSコンソールから作成したskillmap-rdsを確認すると、 「DB名: -」 となっており、こちらが原因なのかなとも思うのですが、DB名を「skillmap」に変更する方法が分からず苦戦しております、、、
winterboum

2019/08/04 11:11

状況の確認をさせて下さい > EC2にssh接続して、railsコンソールでUserや他テーブルを作成し確認すると、保存されているのですが、 > mysqlの方にはデータが登録されていません。 実はここが矛盾しているので「回答」では端折ってしまったのですが、 「テーブルを作成し確認」できたのはテーブルまでで、insertしてデータができているのを確認したわけではなかったということでしょうか? どういう操作でどういう結果が帰ってきているのか、ということを、自然言語ではなく、叩いたコマンドとそのレスポンスで見せて頂けますか
west_side_park

2019/08/04 13:05

まず、EC2に置いたアプリのディレクトリで、 「bundle exec rake db:migrate RAILS_ENV=production」を叩きました。 この時にmysqlの方には今回用意した、テーブル情報が保存されています。 同時に、seeds.rbに記述した初期データがrailsコンソールの方では登録されていることを確認できます。 irb(main):001:0> User.all User Load (0.5ms) SELECT "users".* FROM "users" LIMIT ? [["LIMIT", 11]] => #<ActiveRecord::Relation [#<User id: 1, admin: true, username: "Admin1", login: "admin1", email: "admin1@example.com", created_at: "2019-07-15 14:18:21", updated_at: "2019-07-15 14:18:21">, #<User id: 2, admin: false, username: "User1", login: "user1", email: "user1@example.com", created_at: "2019-07-15 14:18:21", updated_at: "2019-07-15 14:18:21">]> しかし、RDSに接続してUser情報を見たとき、以下のようにデータが空です。と表示されています。 mysql> select * from users; Empty set (0.01 sec) 説明がうまくできず、すみません。 railsコンソールの方でデータが登録されているので、sqlの方ではinsertは行っていません。
winterboum

2019/08/04 21:09

念の為に伺いますが、 railsコンソール のときにRAILS環境は 指定しましたか?
west_side_park

2019/08/05 03:03

申し訳ありません。 質問の内容が理解できておらず、確認ができていません。 これはrailsコンソールを開いて確認するものでしょうか?
winterboum

2019/08/05 03:22

コンソールを開くとき、 rails c としましたか? RAILS_ENV=production rails c または rails c -e production としましたか?
winterboum

2019/08/05 04:21

それですと development のDBを見に行っています。 db:seed も環境無指定ですと developmentのDBに設定されます。 RAILS_ENV=production コマンド として、seed ,rails c してみてください。 -e production でもいけると思いますが、わたしはその方法は使わないので、使える場合を使えない場合がわからないので、、、、
west_side_park

2019/08/05 05:23 編集

RAILS_ENV=production rails db:seed を叩いたところ、 mysqlの方にseed.rbのデータが登録されていることを確認できました! ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問