Ruby-on-rails-rails-database-setup
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はユーザーを提供しません。 新しいユーザーを作成する必要があります。 次のコマンドを使用して、 rubyuser という名前のユーザーを作成します。
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移行を使用してデータベーステーブルを管理する方法について説明します。