如何初始化MySQL数据库?

时间:2011-09-04 16:42:53

标签: mysql ruby-on-rails unix macos

我在终端尝试了这些命令。 MySQL已安装,但我不知道如何为我正在使用的rails应用程序初始化数据库

2 个答案:

答案 0 :(得分:5)

我假设您使用的是Linux。如果你不是,请说出来。我只是在Ubuntu上执行了这些步骤,而且我知道在OS X上设置MySQL的过程要困难得多。另外,请在下次提供更多详细信息。

首先,您必须安装MySQL。您需要安装MySQL以及Ruby连接器。 Rails可能附带一个用于MySQL的Ruby连接器。我不相信安装这个有任何负面影响。要安装MySQL和Ruby连接器,请在终端窗口中执行以下命令:

  

sudo apt-get install mysql-server mysql-client
  sudo apt-get install libmysql-ruby libmysqlclient-dev

在此过程中,系统会要求您设置root密码。这将在以后派上用场。下一步是将mysql gem添加到依赖项列表中。为此,请将以下行添加到Gemfile:

  

gem'mysql'

然后运行

  

捆绑安装

安装mysql gem。接下来,您必须将数据库适配器更改为mysql。您可以通过打开config / database.yml来完成此操作,并且在每个环境下都应该有一个行列表适配器:XXXX,您应该将其更改为

  

adapter:mysql

您还需要在此处配置数据库访问权限。这是一个示例:

development:
  adapter: mysql
  database: YourApp_development
  username: root
  password: root_password
  host: localhost
  pool: 5
  timeout: 5000

确保将root_password替换为您配置mysql以使用的密码。您也可以创建其他MySQL用户,但这超出了本问题的范围。现在,通过在终端窗口中键入以下内容来确保MySQL服务器正在运行:

  

/etc/init.d/mysql start

然后运行rake db:create

希望有所帮助。

答案 1 :(得分:3)

假设您处于开发环境中,否则您需要添加值为RAILS_ENV=production的环境变量。

rake db:create # creates the databases (if privileged)
rake db:migrate # runs migrations from db/migrate