好的,我这里有一个非常愚蠢的问题,而且我开始变得非常沮丧。
就在几分钟前,我可以在localhost上运行我的网站,没有任何问题。它在apache2上与mySQL(一个Ubuntu盒子)在同一台机器上运行。
我更改了PHP的时区和文件上传大小限制,然后重新启动了apache和mysql。
现在,当我尝试从服务器上的apache运行该站点时,它无法再选择数据库。据我所知,实际连接到mysql没有问题,但是当我运行mysql_selectdb时,它不起作用。
如果我从笔记本电脑上运行此网站,通过我的家庭网络连接到它,它可以完美运行。
我现在真的很沮丧,因为它在几分钟前工作得很好。我甚至不记得改变任何mySQL设置。
有人可以帮我弄清楚这是怎么发生的,以及如何解决这个问题?我真的需要尽快让它工作。
编辑:以下是我用来连接的代码:
mysql_connect($serverUrl,'xx','xxx');
@mysql_selectdb('mydatabase') or die(mysql_error());
编辑2:当我使用root用户登录时,它可以正常工作。据我所知,我已经给了我以前用过的用户root权限,但我想我可能错了。这是我在mySQL中用来提供访问权限的命令:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost';
答案 0 :(得分:1)
我正在使用的用户绝对不是'www-data'。
我猜您在之前使用其中一个mysql_*
函数建立连接。这将使mySQL库使用默认登录数据 - 在您的情况下,失败。
查看错误消息的文件名和行号,以查看它被触发的位置。