【发布时间】:2011-10-16 23:37:43
【问题描述】:
我看过这篇关于类似问题的帖子:
CakePHP: Can't access MySQL database
我已经尝试了他们在其中提到的所有内容,包括:
- 更改我的 database.php 以便 $default 和 $test 的“端口”属性是我的 mysqld.sock 文件的位置
- 将“端口”属性更改为代表 my.cnf mysql 配置中端口的实际整数
- 将 php.ini 中的 mysql 套接字位置更改为我的 mysqld.sock 文件的位置
我使用的是 ubuntu 11.04、apache 2.2.17、mysql 5.1.54 和 CakePHP 1.3.10。我安装的 mysql 和 apache 似乎不符合任何约定,因为所有配置文件都在那里,它们都在非常奇怪的地方——我不知道为什么会这样,但我试过重新安装两个程序多次得到相同的结果...
无论如何,我可以从终端登录mysql并正常使用它,并且apache正在工作,因为我可以看到CakePHP默认主页。我只是无法让它更改消息“Cake 无法连接到数据库”。
已解决:想通了,必须更改 php.ini 以便 extension_dir 指向正确的目录,并且必须添加一行 extension=mysql.so。
【问题讨论】:
-
您是否尝试过使用简单的 php 脚本与
mysql_connect或mysqli_connect进行连接? -
正如 vstm 所说,尝试从 PHP 中连接到您的 MySQL 数据库,只是一个普通的 PHP 脚本。不是通过 MySQL 终端。
-
所以,正如默认页面所说,我使用以下代码创建了一个 home.ctp:
<?php $link = mysql_connect('localhost','user','pass'); ?>,它告诉我它是未定义的。我已经根据 aptitude 安装了 php5-mysql 模块...
标签: php mysql database cakephp cakephp-1.3