如何将mysql数据库文件连接到rails应用程序上的本地ruby

时间:2010-07-15 15:18:42

标签: mysql ruby-on-rails

我有一个发送给我的数据库文件(name.sql),我应该连接到我的mac本地托管的rails应用程序,我从github下载(forked?)。如何设置我的database.yml文件以连接sql文件。

2 个答案:

答案 0 :(得分:5)

您无法将Rails应用程序直接连接到SQL文件。 Rails应用程序从数据库服务器获取其数据,并将SQL文件的内容导入到服务器托管的数据库中。

您可以从http://dev.mysql.com/downloads/mysql/#downloads

下载将在Mac上安装MySQL社区服务器的DMG存档

该下载还包括一个方便的首选项窗格,用于启动和停止服务器。

启动并运行MySQL后,应使用

为root用户(即数据库系统管理员)设置密码
mysqladmin -u root password "secret"

- 显然将secret替换为您要使用的真实密码。

然后,您可以为Rails应用程序设置database.yml文件。对于名为 app 的应用程序,它看起来像这样:

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

请注意,通常在生产环境中,您需要为Rails应用程序创建一个单独的有限权限数据库用户帐户,以便连接到MySQL,但是对于本地计算机上的开发,root帐户是可以的。

在此步骤之后,您可以从终端内的Rails应用程序的根目录运行rake db:create。此命令将在MySQL中创建app_development数据库(rake db:create:all也创建测试和生产数据库)。最后,您可以通过在终端中输入以下命令来导入SQL文件:

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

系统将提示您输入MySQL root密码。如果path/to/file不在终端的当前目录中,请将~/Desktop/name.sql替换为SQL文件的完整路径。例如,如果它在您的桌面上,请使用{{1}}。

答案 1 :(得分:0)

可能最简单:您需要在Mac上运行数据库服务器。然后将数据导入数据库服务器。

在mac上安装rails的教程还将讨论如何安装本地数据库服务器和设置database.yml文件