从PHP以127.0.0.1连接到MySQL时出错

时间:2014-09-21 22:42:52

标签: php mysql ubuntu

这是我用来连接本地mysql数据库的文件。

<?php
$dbhost = '127.0.0.1';
$dbuser = 'richard77';
$dbpass = '************';
$conn = mysql_connect($dbhost, $dbuser, $dbpass)
        or die ('Error connecting to mysql');

$dbname = 'memcache';
mysql_select_db($dbname);
?>

richard77 是我的 sudo权限的Ubuntu用户名。以上密码与我在使用sudo命令时输入的密码相同。

我一直收到同样的错误:Error connecting to mysql。我尝试了多种组合:对于$dbhost127.0.0.1localhost,以及$dbuserrichard77richard77--VirtualBox和{ {1}}。

我甚至不知道我的连接字符串的哪一部分失败了。关于从哪里开始的任何建议?

1 个答案:

答案 0 :(得分:1)

正如迈克尔所说,你需要在MySQL中拥有一个自己的用户帐户。您可以使用MySQL root帐户(不是系统根目录!)创建一个,如下所示:

mysql -u root -p -e "GRANT ALL ON dbname.* TO username@localhost IDENTIFIED BY 'secure_password';"

这将创建用户,设置密码,并授予用户您希望他管理的数据库的所有权限。

注意:写下dbname.*username@localhost非常重要。不要只写dbnameusername

如果您没有MySQL root密码,而且您使用的是基于Debian的系统(Ubuntu),则可以使用debian-sys-maint帐户和{{1}中找到的密码}。

/etc/mysql/debian.cnf