你可以在 MySQL 中“su -”吗?

xen*_*ide 7 mysql permissions

如果我在 mysql 数据库上拥有 root 权限,并且想将权限降至普通用户的权限,而不使用他们的密码,我可以这样做吗?如果是这样怎么办?想想# su - usernameunix。基本上,我只是想避免让他们的密码成为他们,这样我就可以测试他们对用户的权限。在 postgres 中,我可以简单地允许对系统 root 用户进行身份验证,以绕过密码验证。我需要这样做的原因是能够通过成为他们来重现用户问题,而不是他们将无法准确重现。我当然可以要求他们提供密码,但这比绕过密码需要更多时间。

Joe*_*Joe 4

我刚刚意识到——只要你不介意在登录时锁定用户——

  1. 备份 mysql.user 表(至少是用户的哈希密码)
  2. 将他们的密码设置为您知道的内容:UPDATE mysql.user SET password=PASSWORD('new password') WHERE user='username' AND host='hostname';
  3. 以他们的身份登录
  4. 将他们的密码设置回原来的密码:UPDATE mysql.user SET password='saved password hash' WHERE user='username' AND host='hostname';

...您可能需要flush privileges;在操作 mysql.user 表后进行操作。