【问题标题】:Why can't I create my database using "rake db:create"?为什么我不能使用“rake db:create”创建我的数据库?
【发布时间】:2011-01-14 09:49:16
【问题描述】:

我最近开始阅读 Rails,在 Windows 上准备好我的开发环境时,我一直遇到问题。所以我选择只在 asmallorange.com 的服务器空间上工作。

一切都很顺利,直到我尝试创建我的数据库。

运行时

rake db:create

我收到回复说它无法创建数据库。响应没有相关错误,日志文件中也没有错误。我的 PuTTY 会话如下所示:

[~]# cd alist
[~/alist]# rake db:create
(in /home/jonnie/alist)
Couldn't create database for {"socket"=>"/var/lib/mysql/mysqld.sock", "reconnect"=>false, "encoding"=>"utf8", "username"=>"admin", "adapter"=>"mysql", "password"=>"************", "database"=>"alist_development", "pool"=>5}, charset: utf8, collation: utf8_general_ci (if you set the charset manually, make sure you have a matching collation)

我的 database.yml 文件如下所示:

development:
  adapter: mysql
  encoding: utf8
  reconnect: false
  database: alist_development
  pool: 5
  username: admin
  password: ************
  socket: /var/lib/mysql/mysqld.sock

test:
  adapter: mysql
  encoding: utf8
  reconnect: false
  database: alist_test
  pool: 5
  username: admin
  password: ************
  socket: /var/lib/mysql/mysqld.sock

production:
  adapter: mysql
  encoding: utf8
  reconnect: false
  database: alist_production
  pool: 5
  username: admin
  password: ************
  socket: /var/lib/mysql/mysqld.sock

我在这一点上很困惑,我无法在其他任何地方找到答案。有谁知道怎么回事?是我做错了什么还是应该联系我的房东解决问题?

【问题讨论】:

    标签: ruby-on-rails ruby rake database


    【解决方案1】:

    您主机上的用户可能没有创建数据库的权限...也许您必须从​​主机工具(例如,从 cpanel)创建数据库。

    【讨论】:

    • 这就是问题所在。我按照您的建议手动创建了我的数据库,现在一切正常。谢谢!
    【解决方案2】:

    另外,您确定/var/lib/mysql/mysqld.sock 是放置套接字的正确位置吗?可能是mysql安装被配置为将套接字放在/tmp或其他地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-17
      • 1970-01-01
      • 2014-06-04
      • 2010-11-28
      • 1970-01-01
      • 1970-01-01
      • 2020-08-23
      • 2015-03-06
      相关资源
      最近更新 更多