Ruby on Rails 2.1 - Configuração do banco de dados

Antes de iniciar este capítulo, certifique-se de que seu servidor de banco de dados esteja configurado e em execução. Ruby on Rails recomenda criar três bancos de dados - um banco de dados para cada ambiente de desenvolvimento, teste e produção. De acordo com a convenção, seus nomes devem ser os seguintes -

  • library_development
  • library_production
  • library_test

Você deve inicializar todos os três e criar um nome de usuário e uma senha para eles com privilégios totais de leitura e gravação. Nós estamos usandorootID de usuário para nosso aplicativo. No MySQL, uma sessão de console tem a seguinte aparência -

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

mysql> use library_development;
Database changed

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)

Você pode fazer a mesma coisa para os outros dois bancos de dados, library_production e library_test.

Configurando database.yml

Neste ponto, você precisa informar o Rails sobre o nome de usuário e senha para os bancos de dados. Você faz isso no arquivodatabase.yml, disponível no C:\ruby\library\configsubdiretório do aplicativo Rails que você criou. Este arquivo possui seções de configuração ao vivo para bancos de dados MySQL. Em cada uma das seções usadas, você precisa alterar as linhas de nome de usuário e senha para refletir as permissões nos bancos de dados que você criou.

Ao terminar, deve ser algo como -

development:
  adapter: mysql
  encoding: utf8
  database: library_development
  username: root
  password: password
  host: localhost
test:
  adapter: mysql
  encoding: utf8
  database: library_test
  username: root
  password: password
  host: localhost
production:
  adapter: mysql
  encoding: utf8
  database: library_production
  username: root
  password: password
  host: localhost

NOTE - Você pode usar configurações semelhantes para outros bancos de dados se estiver usando qualquer outro banco de dados, exceto MySQL.

O que vem a seguir?

Os próximos dois capítulos explicam como modelar suas tabelas de banco de dados e como gerenciá-las usando migrações Rails.