首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails开发- MySQL连接问题

Rails开发- MySQL连接问题
EN

Stack Overflow用户
提问于 2014-01-10 13:49:16
回答 2查看 2.2K关注 0票数 4

我是Rails的新手。我试图用这个网站的答案来解决我的问题,但是失败了。

1.我的配置

Window 7 64bit

ruby 1.9.3p484

rails 4.0.2

mysql server 5.0.91-community-nt (32bit)

mysql gem

I set a password for root in mysql configuration

2.我创建了一个新的应用程序

rails new my_cms -d mysql

我做了两个改变

  1. 在Gemfile中,我使用mysql而不是mysql2
  2. 内部配置/database.yml我使用mysql而不是mysql2

3. config/database.yml内容

代码语言:javascript
复制
development:
  adapter: mysql  
  encoding: utf8  
  database: mycms_development  
  pool: 5  
  username: root  
  password:  
  host: 127.0.0.1  
  port: 3306

test:
  adapter: mysql2  
  encoding: utf8  
  database: mycms_test  
  pool: 5  
  username: root  
  password:  
  host: localhost

production:
  adapter: mysql2  
  encoding: utf8  
  database: mycms_production  
  pool: 5  
  username: root  
  password:  
  host: localhost

4.运行服务器

rails s

服务器正在运行。

5.打开浏览器并键入localhost:3000错误,如下面所示

代码语言:javascript
复制
Mysql::Error
Access denied for user 'root'@'localhost' (using password: NO)
Rails.root: E:/cms/mycms

6.我解决错误的努力

我尽了最大努力按照这里的指引破译错误。

TRY=>更改了127.0.0.1而不是本地主机,添加了端口: 3306

RESULT=> Mysql::Error

Access denied for user 'root'@'localhost' (using password: NO)

Rails.root: E:/cms/mycms

TRY=>将我的密码作为根密码字段放在config/database.yml文件中

RESULT=>ActiveRecord::ConnectionNotEstablished

TRY=>执行mysql -uroot

RESULT=> ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

TRY=>创建了一个新的用户vipin,并授予所有特权并执行mysql -uvipin

RESULT=> ERROR 1045 (28000): Access denied for user 'vipin'@'localhost' (using password: NO)

TRY=>执行mysql -uroot -p

RESULT=> password:,当我给出密码时,它成功地直接指向mysql>提示符。

我不知道下一步是什么。请帮帮忙。谢谢

编辑

进入localhost:3000时的当前状态

EN

回答 2

Stack Overflow用户

发布于 2014-01-11 18:03:20

也尝试为测试环境设置密码和主机:

代码语言:javascript
复制
development:
  adapter: mysql  
  encoding: utf8  
  database: mycms_development  
  pool: 5  
  username: root  
  password: vipin 
  host: localhost  
  port: 3306

test:
  adapter: mysql  
  encoding: utf8  
  database: mycms_test  
  pool: 5  
  username: root  
  password: vipin
  host: localhost
  port: 3306

production:
  adapter: mysql  
  encoding: utf8  
  database: mycms_production  
  pool: 5  
  username: root  
  password:  
  host: localhost
  port: 3306

如果不工作,请尝试host: 127.0.0.1

无论如何,我建议使用MySQL 5.5和mysql2 gem。要安装gem,请看一下这个链接

或者您也可以尝试BitMani Ruby安装程序。

Ruby堆栈安装程序

BitMani维基

票数 1
EN

Stack Overflow用户

发布于 2014-01-10 14:11:39

尝试进入mysql -u root并在mycms_development.*上执行“`GRANT所有特权”到root@localhost

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21046029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档