无法找到数据库?

如果你选择使用 SQLite3 数据库,则应首先按照此处的说明进行安装:

  1. http://wiki.rubyonrails.org/rails/pages/HowtoUseSQLite

如果(像我一样)你已经决定使用 MySQL 数据库,并且假设 MySQL 已正确安装(参见附录),那么当你尝试运行应用程序时,Rails 可能会显示类似于以下内容的错误消息:

  1. no such file to load -- mysql

某些版本的 Rails(例如,Rails 2.2)要求将 MySQL gem 作为单独的操作安装。为此,请在系统提示符下输入:

  1. gem install mysql

在 Windows 上,当你现在运行应用程序时,你可能会看到与此类似的其它错误消息:

  1. The specified module could not be found.
  2. c:/ruby/lib/ruby/gems/1.8/gems/mysql-2.7.3-x86-mswin32/ext/mysql.so

如果你遇到此问题,你应该能够通过将 MySQL 二进制目录(例如,C:\Program Files\MySQL\MySQL Server 5.0\bin)中名为 libmySQL.dll 的文件的副本复制到 Ruby 二进制目录(例如,C:\ruby\bin)中来修复它。重新启动应用程序(关闭并重新启动服务器),然后再次尝试运行它。

我们简单的 “hello world” 应用程序不需要数据库。验证是否正确指定了数据库适配器(例如 sqlite3mysql),但在数据库配置文件 \app\config\database.yml 的 ‘development’ 部分中没有给出数据库名称。

当我使用 MySQL 时,我的配置如下(其中 ‘root’ 是我的 MySQL 用户名,’mypassword’ 是我的 MySQL 密码:

  1. development:
  2. adapter: mysql
  3. host: localhost
  4. username: root
  5. database:
  6. password: mypassword