2012-03-25 70 views
7

我想用一个rails应用程序使用mysql(我从来没有使用过mysql)。我的经验仅限于sqlite3和postgresql,它们非常易于使用。在rails中使用mysql - 如何设置?

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

但是,我不知道如何继续。除了在我的系统上安装它之外,我还没有在mysql中设置任何东西,我不知道如何设置它来运行,它为我的应用程序存储数据库的位置,等等。

请任何人都可以让我知道无论接下来的步骤,或者一个教程,将让我足够的理解来开发我的应用程序,就像它有一个更简单的(源码)数据库系统的功能?

+0

什么OS是你安装了吗? – David 2012-03-25 19:02:40

+0

MAC OSX Snow Leopard – jay 2012-03-25 19:04:15

回答

8

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

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

mysql -u root 

默认情况下,MySQL的root用户不需要密码,否则,你将与-p指定它,所以这将是:

mysql -u root -p 

一旦你在你的MySQL服务器登录,您希望通过做这个命令来创建数据库:

CREATE DATABASE my_project_database; 

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

如果你想避免进入MySQL服务器,并做了Rails的方式,您可以用耙创建数据库。你想使用这个命令: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的东西是它的ORMActive Record。它将抽象所有数据库操作,所以你不必担心要么如果要调用一个MySQL或一个SQLite ...

+0

我不明白我会在哪里做这个..你能更具体吗?一旦我有一个数据库运行,我知道如何进行迁移等。我只是不能达到那个点 – jay 2012-03-25 18:19:14

+0

我编辑了我的问题。基本上你想登录你的MySQL服务器并创建数据库。但是,有一种Rails方式可以做到这一点,而不必键入任何MySQL相关的命令:P-请参阅我的编辑 – Nobita 2012-03-25 18:31:54

+0

AHh,这更清晰。感谢您的帮助..我认为我的安装可能已经搞砸了,我在mysql -u和rake db上都得到这个错误:create:无法通过套接字'/tmp/mysql.sock'连接到本地MySQL服务器任何输入?再次谢谢 – jay 2012-03-25 18:38:33

相关问题