mamp mac mysql.sock_在Mac OSX上使用MAMP时,如何让CakePHP烘焙找到mysql.sock并识别MySQL?...

在Mac上使用MAMP和CakePHP时,遇到通过'/var/mysql/mysql.sock'连接MySQL失败的问题。尝试修改数据库配置以指向MAMP的UNIX套接字,但错误依然存在。错误显示为尝试连接到'/Applications/MAMP/tmp/mysql/mysql.sock:3306'失败。寻求解决方案,以使CakePHP能正确识别MySQL套接字。
摘要由CSDN通过智能技术生成

我目前正在阅读David Golding的“Beginning CakePHP:从新手到专业”.有一次,我必须使用CLI命令“蛋糕烘烤”,我得到欢迎屏幕,但当我尝试烘烤,例如控制器我收到以下错误消息:

Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (2) in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 117

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 122

Warning: mysql_get_server_info(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 130

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 154

Error: Your database does not have any tables.

我怀疑错误消息与php试图访问错误的mysql-socket,即默认的osx mysql-socket而不是MAMP使用的错误消息有关.因此,我更改了我的数据库配置以连接到UNIX mysql-socket(:/Applications/MAMP/tmp/mysql/mysql.sock):

class DATABASE_CONFIG {

var $default = array(

'driver' => 'mysql',

'connect' => 'mysql_connect',

'persistent' => false,

'host' =>':/Applications/MAMP/tmp/mysql/mysql.sock', // UNIX MySQL-socket

'login' => 'my_user',

'password' => 'my_pass',

'database' => 'blog',

'prefix' => '',

);

}

但我得到与新套接字相同的错误消息:

Warning: mysql_connect(): Can't connect to local MySQL server through socket '/Applications/MAMP/tmp/mysql/mysql.sock:3306' (2) in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 117

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 122

Warning: mysql_get_server_info(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 130

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 154

Error: Your database does not have any tables.

此外,即使我使用MAMP在欢迎屏幕上显示的UNIX套接字,当使用此套接字而不是localhost时,CakePHP会丢失数据库连接.

关于如何烘焙工作的任何想法?

– 编辑1 –

谢谢大家帮帮我! 🙂

我有一个问题,想知道在my.cnf中编辑哪些地方让MySQL听取TCP / IP请求.我能找到的唯一提到TCP / IP的段落如下:

# Don't listen on a TCP/IP port at all. This can be a security enhancement,

# if all processes that need to connect to mysqld run on the same host.

# All interaction with mysqld must be made via Unix sockets or named pipes.

# Note that using this option without enabling named pipes on Windows

# (via the "enable-named-pipe" option) will render mysqld useless!

#

#skip-networking

这允许我完全关闭TCP / IP,这与我的意图相反.我不知道如何处理你的建议,如果你能够更精细,它会很棒.在这些问题上我总共n00b:S

注册.连接到本地套接字:我删除了host-parameter中的前导冒号,结果相同.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值