ruby连接mysql报错: Can't connect to MySQL server on 'localhost' (10061)

我的程序很简单:require"dbi"dbh=DBI.connect("dbi:Mysql:ruby:;localhost","root","root")if(dbh)... 我的程序很简单:
require "dbi"
dbh = DBI.connect("dbi:Mysql:ruby:;localhost", "root", "root")

if (dbh)
puts open
else
puts unable to open
end

具体的错误信息 如下:
D:/Ruby1.9.2/Ruby192/lib/ruby/gems/1.9.1/gems/dbd-mysql-0.4.4/lib/dbd/Mysql.rb:106:in `error': Unknown MySQL server host ';localhost' (0) (DBI::DatabaseError)
from D:/Ruby1.9.2/Ruby192/lib/ruby/gems/1.9.1/gems/dbd-mysql-0.4.4/lib/dbd/mysql/driver.rb:70:in `rescue in connect'
from D:/Ruby1.9.2/Ruby192/lib/ruby/gems/1.9.1/gems/dbd-mysql-0.4.4/lib/dbd/mysql/driver.rb:32:in `connect'
from D:/Ruby1.9.2/Ruby192/lib/ruby/gems/1.9.1/gems/dbi-0.4.5/lib/dbi/handles/driver.rb:33:in `connect'
from D:/Ruby1.9.2/Ruby192/lib/ruby/gems/1.9.1/gems/dbi-0.4.5/lib/dbi.rb:148:in `connect'
from rubytest.rb:2:in `<main>'

请ruby大牛赐教!!
展开
 我来答
汪雄辉拉
2012-02-21 · TA获得超过2966个赞
知道大有可为答主
回答量:1430
采纳率:0%
帮助的人:1673万
展开全部
mysql的服务没有开,登录到mysql服务器,ps -ef|grep mysqld看看,如果是windows下,执行 sc query mysql 看看服务状态是什么
追问
windows下:

[SC] EnumQueryServicesStatus:OpenService 失败 1060:

指定的服务未安装。
请问怎么解决?谢谢你
追答
哦,sc create mysql binPath = 'mysqld的路径',比如我的binPath就是 D:\MySQL Server 5.0\bin\mysqld.exe执行完之后 net start mysql
木万万
2012-03-06 · 超过12用户采纳过TA的回答
知道答主
回答量:26
采纳率:0%
帮助的人:33.6万
展开全部
这样手动连接呀,你为什么不在配置文件里直接设定呢?编辑项目下config/database.yml。设定数据库类型和密码(也可以是远程的),这样多好呀。ruby提供了很多不错的设定,直接用的话开发很方便的。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1636117
2012-11-22 · TA获得超过140个赞
知道答主
回答量:86
采纳率:0%
帮助的人:45.2万
展开全部
看看你的hosts里面的localhost 是不是127.0.0.1 如果没有加上。。其他软件肯能会修改你的hosts文件。。不然你直接在有localhost 的地方换上127.0.0.1.。看看是否可以通过。。还有你的libmysql.dll文件是否导入了。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式