eclipseでRuby on Rails 16回目~ディフォルトDBはどこにある?~ [Ruby on Rails]
スポンサードリンク
当記事作成時の環境:Windows10 64bit、Eclipse4.5、Ruby 2.2.3、Apatana Studio3、RadRils
前回は、下記のコマンドを流すと何が起こるのかをし食べていました。
「bin/rake db:migrate RAILS_ENV=development」
結果、ソース上では「schema.rb」というテーブルの定義ファイルのようなものが作成され、
どこかにあるデータベース(以下、DB)テーブルが作成されているということまでわかりました。
今回は、どこにDBがあって、テーブルが作成されているのかを調べます。
調べていくと、どうやら下記のファイルにDBの情報が書かれている模様。
config/database.yml
中身を確認してみます。
まず最初にあるのが、defaultという情報。
内容は下記のようになっています。
default: &default
adapter: sqlite3
pool: 5
timeout: 5000
この部分はDBの設定情報を定義しています。
それぞれの意味は下記のようになっています。
adapter: sqlite3
⇒使用するDBを定義している。ディフォルトではsqlite3を使用するようになっている。
pool: 5
⇒コネクションプールの同時接続可能数。5つのコネクションを同時に保持できる。
timeout: 5000
⇒タイムアウトまでの時間をミリ秒で表している。初期値は5000なので5秒。
ちなみに「&default」はこの設定値の別名を意味しているようです。
defaultの下には下記の3つの定義情報があります。
development=開発環境用DB
test=テスト用DB
production=本番環境用DB
各々の使用用途もざっくり書きましたが、何が違うのか、まではここでは調べません。
3つともDBの定義情報で内容も同じであるため、developmentを抜粋して中身を見てみます。
development:
<<: *default
database: db/development.sqlite3
1行目はDBの名前です。
<<: *default
⇒default設定値をこのDBに適用する。「<<」は矢印?挿入を意味しているみたいです。
database: db/development.sqlite3
⇒DBのデータファイルの場所。
ありました。ほしかった情報。
DBはディフォルトでdbフォルダのdevelopment.sqlite3に入っているみたいです。
config/database.ymlのディフォルト値について確認しました。
こう見ると、tomcatのcontext.xmlに定義しているResourceタグと似ているイメージ。
今後postgresSQLに変えていくため、その際にdatabase.ymlはいろいろ触ることになりそう。
何はともあれ、DBの場所が分かったので次回はDBの中身を確認したいと思います。
スポンサードリンク
当記事作成時の環境:Windows10 64bit、Eclipse4.5、Ruby 2.2.3、Apatana Studio3、RadRils
前回は、下記のコマンドを流すと何が起こるのかをし食べていました。
「bin/rake db:migrate RAILS_ENV=development」
結果、ソース上では「schema.rb」というテーブルの定義ファイルのようなものが作成され、
どこかにあるデータベース(以下、DB)テーブルが作成されているということまでわかりました。
今回は、どこにDBがあって、テーブルが作成されているのかを調べます。
調べていくと、どうやら下記のファイルにDBの情報が書かれている模様。
config/database.yml
中身を確認してみます。
まず最初にあるのが、defaultという情報。
内容は下記のようになっています。
default: &default
adapter: sqlite3
pool: 5
timeout: 5000
この部分はDBの設定情報を定義しています。
それぞれの意味は下記のようになっています。
adapter: sqlite3
⇒使用するDBを定義している。ディフォルトではsqlite3を使用するようになっている。
pool: 5
⇒コネクションプールの同時接続可能数。5つのコネクションを同時に保持できる。
timeout: 5000
⇒タイムアウトまでの時間をミリ秒で表している。初期値は5000なので5秒。
ちなみに「&default」はこの設定値の別名を意味しているようです。
defaultの下には下記の3つの定義情報があります。
development=開発環境用DB
test=テスト用DB
production=本番環境用DB
各々の使用用途もざっくり書きましたが、何が違うのか、まではここでは調べません。
3つともDBの定義情報で内容も同じであるため、developmentを抜粋して中身を見てみます。
development:
<<: *default
database: db/development.sqlite3
1行目はDBの名前です。
<<: *default
⇒default設定値をこのDBに適用する。「<<」は矢印?挿入を意味しているみたいです。
database: db/development.sqlite3
⇒DBのデータファイルの場所。
ありました。ほしかった情報。
DBはディフォルトでdbフォルダのdevelopment.sqlite3に入っているみたいです。
config/database.ymlのディフォルト値について確認しました。
こう見ると、tomcatのcontext.xmlに定義しているResourceタグと似ているイメージ。
今後postgresSQLに変えていくため、その際にdatabase.ymlはいろいろ触ることになりそう。
何はともあれ、DBの場所が分かったので次回はDBの中身を確認したいと思います。
スポンサードリンク
コメント 0