![尝试“设置密码”时“在用户表中找不到任何匹配的行”](https://linux22.com/image/1583111/%E5%B0%9D%E8%AF%95%E2%80%9C%E8%AE%BE%E7%BD%AE%E5%AF%86%E7%A0%81%E2%80%9D%E6%97%B6%E2%80%9C%E5%9C%A8%E7%94%A8%E6%88%B7%E8%A1%A8%E4%B8%AD%E6%89%BE%E4%B8%8D%E5%88%B0%E4%BB%BB%E4%BD%95%E5%8C%B9%E9%85%8D%E7%9A%84%E8%A1%8C%E2%80%9D.png)
当我这样做时,SELECT User, Host FROM mysql.user
我看到我有一个名为 的用户myuser
。%
我尝试按如下方式设置该用户的密码:
SET PASSWORD FOR 'myuser'@'%' = 'mypassword';
但是,这样做会导致以下错误:
Error Code: 1133. Can't find any matching row in the user table
有任何想法吗?
答案1
'myuser'@'%'
如果我没记错的话,此上下文中的主机名中可以使用通配符。您明确尝试为而不是任何名为 的用户设置密码myuser
。
如果所有用户确实都应该使用相同的密码,您将需要获取用户及其主机名的列表,并为每个用户设置密码。