Mysql
 sql >> Database >  >> RDS >> Mysql

Come collego un file di database mysql a un'applicazione locale Ruby on Rails

Non puoi connettere un'applicazione Rails direttamente a un file SQL. L'applicazione Rails ottiene i suoi dati da un server di database e tu importi il ​​contenuto del file SQL in un database ospitato dal server.

Puoi scaricare un archivio DMG che installerà MySQL Community Server sul tuo Mac da http:// dev.mysql.com/downloads/mysql/#downloads

Tale download include anche un pratico riquadro delle preferenze per avviare e arrestare il server.

Una volta che MySQL è installato e funzionante, dovresti impostare una password per l'utente root (cioè l'amministratore del sistema del database) usando

mysqladmin -u root password "secret"

—Ovviamente sostituisci secret con la vera password che vuoi usare.

Quindi puoi impostare il database.yml file per l'applicazione Rails. Per un'applicazione denominata app sarebbe simile a questo:

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

Nota che in genere in produzione creeresti un account utente di database con privilegi limitati separato per l'applicazione Rails con cui connettersi a MySQL, ma per lo sviluppo sulla tua macchina locale l'account root va bene.

Dopo questo passaggio puoi eseguire rake db:create dalla radice dell'applicazione Rails all'interno del Terminale. Questo comando creerà il app_development database in MySQL (rake db:create:all crea anche i database di test e produzione). Infine, puoi importare il tuo file SQL inserendo il seguente comando nel Terminale:

mysql -u root -p app_development < path/to/file/name.sql

Ti verrà richiesta la password di root di MySQL. Sostituisci path/to/file con il percorso completo del file SQL se non si trova nella directory corrente del Terminale. Ad esempio, usa ~/Desktop/name.sql se è sul desktop.