【问题标题】:How do I connect a mysql database file to a local ruby on rails application如何将 mysql 数据库文件连接到本地 ruby​​ on rails 应用程序
【发布时间】:2011-03-16 11:33:50
【问题描述】:

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

【问题讨论】:

    标签: mysql ruby-on-rails


    【解决方案1】:

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

    您可以从http://dev.mysql.com/downloads/mysql/#downloads 下载一个 DMG 存档,它将在您的 Mac 上安装 MySQL 社区服务器

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

    一旦你启动并运行了 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 根密码。如果 SQL 文件不在终端的当前目录中,则将 path/to/file 替换为 SQL 文件的完整路径。例如,如果在您的桌面上,请使用 ~/Desktop/name.sql

    【讨论】:

      【解决方案2】:

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

      mac上安装rails的教程也会讲到如何安装本地数据库服务器和设置database.yml文件

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-12-08
        • 1970-01-01
        • 1970-01-01
        • 2015-09-18
        • 2015-01-28
        • 1970-01-01
        • 2014-02-12
        • 1970-01-01
        相关资源
        最近更新 更多