无需知道密码即可授予对数据库的访问权限

时间:2011-03-28 14:10:56

标签: mysql mysql-management

因此,授予用户访问数据库的授权查询是:

GRANT ALL PRIVILEGES ON dbname.* TO dbuser @'%' IDENTIFIED BY 'dbpasswd';

现在,我们系统的问题是我们不知道数据库密码,也无法对其进行反向工程,因为它是一个哈希。是否可以在不知道数据库密码的情况下直接显式定义权限?

当前的系统太复杂,甚至无法确定数据库配置文件的位置,并且在此工作数天没有产生任何结果。真的很感激一些帮助。

PS:mysql数据库中用户表的权限是什么意思? 有:Select_priv,Insert_priv,Update_priv,Delete_priv但它们是按用户定义的,而不是基于数据库的。

2 个答案:

答案 0 :(得分:5)

只是不要使用IDENTIFIED BY ...子句,它不会更改当前密码。

“user”表中的Select_priv,Insert_priv,Update_priv,Delete_priv表示用户对所有数据库都拥有这些权限(否则,这些列在“db”表中定义为Y)

答案 1 :(得分:0)

停止mysqld并使用--skip-grant-tables选项重新启动它并更改密码。