这是我用来连接本地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是我的Ubuntu用户名,具有sudo特权。上述密码与我使用sudo命令时输入的密码相同。
我一直收到同样的错误:Error connecting to mysql。我尝试过几种组合:$dbhost:127.0.0.1和localhost,$dbuser:richard77、richard77--VirtualBox和richard77@richard77--VirtualBox。
我甚至不知道我的连接字符串的哪一部分失败了。对从哪里开始有什么建议吗?
发布于 2014-09-21 23:00:11
正如迈克尔所说,您需要在MySQL中拥有自己的用户帐户。您可以使用MySQL根帐户(它不是系统根!)创建一个如下所示:
mysql -u root -p -e "GRANT ALL ON dbname.* TO username@localhost IDENTIFIED BY 'secure_password';"这将创建用户,设置密码,并授予用户在您希望他管理的数据库上的所有权限。
注意:编写dbname.*和username@localhost非常重要。不要只写dbname或username。
如果您没有MySQL根密码,并且您使用的是基于Debian的系统( Ubuntu是这样的),您可以使用debian-sys-maint帐户和您在/etc/mysql/debian.cnf中找到的密码。
mysql -u debian-sys-maint -p -e "GRANT ALL ON dbname.* TO username@localhost IDENTIFIED BY 'secure_password';"https://stackoverflow.com/questions/25964619
复制相似问题