【问题标题】:Using mysql with rails - how do I set this up?将 mysql 与 rails 一起使用 - 我该如何设置?
【发布时间】:2012-03-25 17:58:57
【问题描述】:

我想在 Rails 应用程序中使用 mysql(我以前从未使用过 mysql)。我的经验完全是 sqlite3 和 postgresql,它们真的很容易使用。

我现在正在创建一个新应用程序来学习使用 mysql。我用自制软件(brew install mysql)安装了 mysql,并创建了一个使用 mysql 而不是 sqlite3 的新 rails 应用程序。我在 gemfile 中包含了正确的 gem (gem 'mysql2', '~> 0.2.6')。

但是,我不知道如何继续。除了将它安装在我的系统上之外,我没有在 mysql 中设置任何其他内容,我不明白您如何设置它以运行它,它为我的应用程序存储数据库的位置等等。

请任何人告诉我接下来的步骤,或者让我了解足以开发我的应用程序以像使用更简单的(sqlite)数据库系统一样运行的教程?

【问题讨论】:

  • 你在什么操作系统上安装它?

标签: mysql ruby-on-rails ruby-on-rails-3


【解决方案1】:

我相信下一步是在“您的系统”中创建数据库,并让 Rails 知道您要使用该数据库。

如果你想直接使用 MySQL 服务器创建数据库,你想从你的控制台使用这个命令登录:

mysql -u root

默认情况下,mysql的root用户是不需要密码的,否则用-p指定,这样就可以了:

mysql -u root -p

登录 MySQL 服务器后,您想通过执行以下命令创建数据库:

CREATE DATABASE my_project_database;

您可能想深入了解 MySQL 中的用户和权限,但这只是一个起点:)。

如果您想避免进入 MySQL 服务器并使用 Rails 方式进行操作,您可以使用 rake 创建数据库。你想使用这个命令:rake db:create。这将与我们之前所做的相同,但请注意,在执行该命令之前,您需要创建 database.yml 文件。所以让我们这样做:

您希望有一个像这样的 database.yml 文件:

development:
    host: localhost
    adapter: mysql2
    database: my_project_database
    username: root (notice that you might want to change this user later)
    password:

我想下一步是创建Migrations,它会生成您想要使用的表格等等。

我最喜欢 Rails 的一件事是它的 ORM 称为 Active Record。它将抽象所有数据库操作,因此您不必担心调用 MySQL 或 SQLite...

【讨论】:

  • 我不明白我会在哪里做这个。你能更具体一点吗?一旦我运行了一个数据库,我就会了解如何进行迁移等等。我只是无法达到那一点
  • 我已经编辑了我的问题。基本上你想登录到你的 MySQL 服务器并创建数据库。但是,有一种 Rails 方法可以做到这一点,而无需键入任何与 MySQL 相关的命令:P- 请参阅我的编辑
  • 啊,这更清楚了。感谢您的帮助.. 我认为我的安装可能搞砸了,我在 mysql -u 和 rake db:create 上都收到此错误:无法通过套接字 '/tmp/mysql.sock' 连接到本地 MySQL 服务器任何输入?再次感谢
  • 我想我应该运行一个 mysql 服务器?我刚刚做了 brew install mysql,还有其他的东西要安装来运行它吗?
  • 我从未使用过 brew...但是是的,您需要一个 mysql 服务器启动并运行。我相信您可能想寻找与此问题相关的其他问题,或者创建您自己的问题来指定您的问题、您正在运行的操作系统等......不过请查看:frederico-araujo.com/2011/07/30/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-31
  • 2016-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-22
  • 1970-01-01
相关资源
最近更新 更多