您好我在MAC OS X Yosemite中设置了rails 3.2.21项目。运行命令rake db:create
时出现以下错误
耙子流产了! ActiveRecord :: StatementInvalid:Mysql2 ::错误:无法创建数据库&share39e_development' (错误号码:2):创建数据库sharetribe_development
默认字符集utf8
收集utf8_unicode_ci
我不知道为什么我收到此错误。我可以使用mysql -u root
访问mysql
这是我的database.yml
development:
adapter: mysql2
database: sharetribe_development
encoding: utf8
username: root
password:
host: localhost
我整天都被这件事搞砸了。任何建议都会受到赞赏
在mysql中,我关注数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)
我添加了gem' mysql2','〜> 0.3.20'在gem文件上。我使用rails 3.2.21.我遇到了另一个问题。我重新安装了mysql。在安装之后,我可以使用mysql -u root
成功访问mysql,但在执行命令rake db:create
之后,它会抛出以下错误。
拒绝访问用户&root;' @' localhost' (使用密码:是)。 请提供mysql安装的root密码
在尝试访问mysql之后,我无法访问它。它说错误1045(28000):用户访问被拒绝' root' @host;' localhost&#39 ; (使用密码:否)
我没有为mysql设置任何密码。但是我无法访问它。
答案 0 :(得分:2)
您使用的是mysql2 gem上的哪个版本?
latest version存在问题,您可能希望回退到0.3.20,看看这是否有所不同。
为此,请将以下内容添加到Gemfile
gem 'mysql2', '~> 0.3.20'
删除当前的gemfile.lock并从命令行运行bundle install
。
答案 1 :(得分:1)
添加gem' mysql2'进入你的Gemfile。