Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como faço para conectar um arquivo de banco de dados mysql a um aplicativo ruby ​​on rails local


Você não pode conectar um aplicativo Rails diretamente a um arquivo SQL. A aplicação Rails obtém seus dados de um servidor de banco de dados e você importa o conteúdo do arquivo SQL para um banco de dados hospedado pelo servidor.

Você pode baixar um arquivo DMG que instalará o MySQL Community Server no seu Mac em http:// dev.mysql.com/downloads/mysql/#downloads

Esse download também inclui um prático Painel de Preferências para iniciar e parar o servidor.

Depois de ter o MySQL instalado e funcionando, você deve definir uma senha para o usuário root (ou seja, o administrador do sistema de banco de dados) usando
mysqladmin -u root password "secret"

—Obviamente substitua secret com a senha real que você deseja usar.

Em seguida, você pode configurar o database.yml arquivo para o aplicativo Rails. Para um aplicativo chamado app ficaria assim:
development:
  adapter: mysql
  database: app_development
  username: root
  password: secret
  host: localhost

test:
  adapter: mysql
  database: app_test
  username: root
  password: secret
  host: localhost

production:
  adapter: mysql
  database: app_production
  username: root
  password: secret
  host: localhost

Observe que normalmente na produção você cria uma conta de usuário de banco de dados de privilégio limitado separada para o aplicativo Rails para se conectar ao MySQL, mas para desenvolvimento em sua máquina local a conta root está bem.

Após esta etapa, você pode executar rake db:create da raiz do aplicativo Rails dentro do Terminal. Este comando criará o app_development banco de dados em MySQL (rake db:create:all cria os bancos de dados de teste e produção também). Por fim, você pode importar seu arquivo SQL digitando o seguinte comando no Terminal:
mysql -u root -p app_development < path/to/file/name.sql

Você será solicitado a fornecer a senha de root do MySQL. Substituir path/to/file com o caminho completo para o arquivo SQL se não estiver dentro do diretório atual do Terminal. Por exemplo, use ~/Desktop/name.sql se estiver na sua área de trabalho.