关于在MySql中设置“权限”

时间:2010-11-12 23:51:01

标签: mysql phpmyadmin

我使用PhpMyAdmin来设置mysql表等。

我也拥有对所有内容的root(完全)访问权限。

目前我在phpMyAdmin的特权标签下有这个:

  USER:       HOST:       PASS:      GLOB PRIVILEGES:
phpmyadmin  localhost   Y    USAGE          No  
root    127.0.0.1   Y    ALL PRIVILEGES       Y 
root    localhost   Y    ALL PRIVILEGES       Y 
root    domain.com  Y    ALL PRIVILEGES       Y 
db1     localhost   Y    ALL PRIVILEGES       Y 
db2     localhost   Y    ALL PRIVILEGES       Y 
user    localhost   Y    USAGE                No    

我用它通过PHP连接:

$dbhost ='localhost';
$dbuser ='db2';
$dbpass ='password_here';
$dbname ='db2';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to mysql');
mysql_select_db($dbname,$conn) or die(mysql_error());
mysql_set_charset('utf-8', $conn);

让我感到困惑的是,如果我更改用户的密码,请说“db2”,并尝试在我的PHP代码中使用该密码进行连接,我无法访问。我正在使用旧密码,即使我将phpMyAdmin中的密码更改为数据库,它也能正常运行。 我甚至不记得设置第一个密码,它一定是很久以前的。 这是我的第一个问题! 顺便说一句,当我点击“更改权限”时,如果它应该使用密码,它所说的字段是从下拉列表中显示“不要更改密码”。难道不应该说“使用文本字段”吗?

其次是我需要知道它应该如何设置,从头到尾......

我有自己的服务器,我是维护自己服务器的新手,但我每天都在学习。

但是这些信息是我在网上找不到的。

我需要在服务器上设置什么?在my.cnf?等...

1 个答案:

答案 0 :(得分:0)

UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='db2';
FLUSH PRIVILEGES;