2

我正在尝试设置 Rails 应用程序以在我的本地计算机上使用 MySQL 服务器进行开发。我已经成功编译了mysql2针对 MySQLConnector/C 的 gem;尽管我在使用与我的 MySQL 服务器安装捆绑在一起的 libmysql.dll 时收到了同样的错误。当我尝试时rake db:create,应用程序无法连接到 MySQL 服务器。

MySQL 在我的机器上配置为 Windows 服务,通过命名管道自动启动本地连接;TCP-IP 已完全禁用。my.ini我的文件中的套接字名称是mysql.

database.yml的 Rails 应用程序文件如下所示:

开发:
适配器:mysql2
编码:utf8 重新连接:false
数据库:application_dev
池:5
用户名:root

密码: **********

主机:本地主机
套接字:mysql

测试:
适配器:mysql2
编码:utf8 重新连接:false
数据库:application_test 池:5
用户名:root

密码: **********

主机:本地主机
套接字:mysql

我收到的错误是:

D:\Dropbox\Programming\Ruby\application>rake db:create (in D:/Dropbox/Programming/Ruby/application) Can't connect to MySQL server on 'localhost' (10061) Couldn't create database for {"适配器"=>"mysql2", "encoding"=>"utf8", "reconnect"=>false, "database"=>"application_test", "pool"=>5, "username"=>"root", "密码"=>"**********", "host"=>"localhost", "socket"=>"mysql"}, charset: utf8, collat​​ion: utf8_unicode_ci

无法连接到 'localhost' 上的 MySQL 服务器 (10061) 无法为 {"adapter"=>"mysql2", "encoding"=>"utf8", "reconnec t"=>false, "database" 创建数据库=>"application_dev", "pool"=>5, "username"=>"root", "password"=>"**********", "host"=>"localhost", " socket"=>"mysql"},字符集:utf8,排序规则:utf8_unicode_ci

我正在使用带有以下 Ruby/Rails/MySQL 发行版的 Windows 7 Home Premium 64 位:

ruby 1.9.2p180 (2011-02-18) [i386-mingw32]

Rails 3.0.7

mysql2 rubygem 0.2.7

mysql Ver 14.14 Distrib 5.5.11, for Win32 (x86)

mysql Connector/C 6.0.0

我试过重新安装 MySQL 服务器并启用 TCP-IP 连接,它只是挂起而不是失败。

4

1 回答 1

0

尝试在您的 database.yml 中添加此参数指定端口号:

port: 3306 (or whatever your mysql port has)
于 2011-08-07T13:07:05.317 回答