📅  最后修改于: 2020-10-20 05:26:35             🧑  作者: Mango
在开始本章之前,请确保您的数据库服务器已启动并正在运行。 Ruby on Rails建议创建三个数据库-一个用于开发,测试和生产环境的数据库。根据约定,他们的名字应该是-
您应该初始化它们全部三个,并为它们创建具有完全读写特权的用户和密码。我们正在为应用程序使用root用户ID。
在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)
您可以对另外两个数据库library_production和library_test执行相同的操作。
此时,您需要让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不提供任何用户。我们必须创建新用户。使用以下命令创建名称为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。
此时,您需要让Rails知道数据库的用户名和密码。您可以在创建的Rails应用程序的library \ config子目录中的database.yml文件中执行此操作。该文件包含PostgreSQL数据库的实时配置部分。在每个部分中,您需要更改用户名和密码行,以反映对已创建数据库的权限。
完成后,它应如下所示-
default: &default
adapter: postgresql
encoding: unicode
development:
adapter: postgresql
encoding: unicode
database: library_development
username: rubyuser
password:
test:
adapter: postgresql
encoding: unicode
database: library_test
username: rubyuser
password:
production:
adapter: postgresql
encoding: unicode
database: library_production
username: rubyuser
password:
接下来的两章介绍了如何对数据库表建模以及如何使用Rails Migrations管理数据库表。