Ruby-on-rails-rails-database-setup

提供:Dev Guides
移動先:案内検索

Ruby on Rails-データベースのセットアップ

この章を始める前に、データベースサーバーが稼働していることを確認してください。 Ruby on Railsでは、3つのデータベースを作成することをお勧めします-開発、テスト、および実稼働環境用のデータベースです。 慣習に従って、それらの名前は次のようになります-

  • library_development
  • library_production
  • library_test

3つすべてを初期化し、完全な読み取りおよび書き込み権限を持つユーザーとパスワードを作成する必要があります。 アプリケーションに root ユーザーIDを使用しています。

MySQLのデータベースセットアップ

MySQLでは、アプリケーションに root ユーザーIDを使用しています。 これを行うMySQLコンソールセッションは次のようになります-

mysql> create database library_development;
Query OK, 1 row affected (0.01 sec)

mysql> grant all privileges on library_development.*
to 'root'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

さらに2つのデータベース library_production および library_test に対して同じことを実行できます。

database.ymlの構成

この時点で、データベースのユーザー名とパスワードをRailsに知らせる必要があります。 これは、作成したRailsアプリケーションの library \ config サブディレクトリにある database.yml ファイルで行います。 このファイルには、MySQLデータベースのライブ構成セクションがあります。 使用する各セクションで、ユーザー名とパスワードの行を変更して、作成したデータベースの権限を反映する必要があります。

終了すると、次のようになります-

development:
   adapter: mysql
   database: library_development
   username: root
   password: [password]
   host: localhost

test:
   adapter: mysql
   database: library_test
   username: root
   password: [password]
   host: localhost

production:
   adapter: mysql
   database: library_production
   username: root
   password: [password]
   host: localhost

PostgreSQLのデータベースセットアップ

デフォルトでは、PostgreSQLはユーザーを提供しません。 新しいユーザーを作成する必要があります。 次のコマンドを使用して、 ruby​​user という名前のユーザーを作成します。

tp> sudo -u postgres createuser rubyuser -s

新しいユーザーのパスワードを作成する場合は、次のコマンドを使用します。

tp> sudo -u postgres psql

postgres=# \password rubyuser

データベース library_development を作成するには、次のコマンドを使用します。

postgres=# CREATE DATABASE library_development OWNER rubyuser;

CREATE DATABASE

データベース library_production を作成するには、次のコマンドを使用します。

postgres=# CREATE DATABASE library_production OWNER rubyuser;

CREATE DATABASE

データベース library_test を作成するには、次のコマンドを使用します。

postgres=# CREATE DATABASE library_test OWNER rubyuser;

CREATE DATABASE
*Ctrl + D* を押して、PosgreSQLを終了します。

database.ymlの構成

この時点で、データベースのユーザー名とパスワードをRailsに知らせる必要があります。 これは、作成したRailsアプリケーションの library \ config サブディレクトリにある database.yml ファイルで行います。 このファイルには、PostgreSQLデータベースのライブ構成セクションがあります。 各セクションで、ユーザー名とパスワードの行を変更して、作成したデータベースの権限を反映する必要があります。

終了したら、次のようになります-

default: &default
   adapter: postgresql
   encoding: unicode

development:
   adapter: postgresql
   encoding: unicode
   database: library_development
   username: rubyuser
   password: <Password for rubyuser>

test:
   adapter: postgresql
   encoding: unicode
   database: library_test
   username: rubyuser
   password: <Password for rubyuser>

production:
   adapter: postgresql
   encoding: unicode
   database: library_production
   username: rubyuser
   password: <Password for rubyuser>

次は何ですか?

次の2つの章では、データベーステーブルをモデル化する方法と、Rails移行を使用してデータベーステーブルを管理する方法について説明します。