U kunt een Rails-toepassing niet rechtstreeks koppelen aan een SQL-bestand. De Rails-applicatie haalt zijn gegevens van een databaseserver en u importeert de inhoud van het SQL-bestand in een database die door de server wordt gehost.
U kunt een DMG-archief downloaden waarmee MySQL Community Server op uw Mac wordt geïnstalleerd vanaf http:// dev.mysql.com/downloads/mysql/#downloads
Die download bevat ook een handig voorkeurenpaneel voor het starten en stoppen van de server.
Als MySQL eenmaal actief is, moet u een wachtwoord instellen voor de rootgebruiker (d.w.z. de databasesysteembeheerder) met
mysqladmin -u root password "secret"
—Vervang duidelijk secret
met het echte wachtwoord dat u wilt gebruiken.
Vervolgens kunt u de database.yml
. instellen bestand voor de Rails-toepassing. Voor een applicatie met de naam app het zou er zo uitzien:
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
Houd er rekening mee dat u in productie normaal gesproken een apart databasegebruikersaccount met beperkte bevoegdheden zou maken voor de Rails-toepassing om verbinding mee te maken met MySQL, maar voor ontwikkeling op uw lokale machine is het root-account prima.
Na deze stap kunt u rake db:create
. uitvoeren vanuit de root van de Rails-applicatie in de Terminal. Deze opdracht maakt de app_development
database in MySQL (rake db:create:all
maakt ook de test- en productiedatabases). Ten slotte kunt u uw SQL-bestand importeren door de volgende opdracht in de Terminal in te voeren:
mysql -u root -p app_development < path/to/file/name.sql
U wordt gevraagd om het MySQL-rootwachtwoord. Vervang path/to/file
met het volledige pad naar het SQL-bestand als het zich niet in de huidige directory van de Terminal bevindt. Gebruik bijvoorbeeld ~/Desktop/name.sql
als het op uw bureaublad staat.