对于某些上下文,我通过Nginx在一个VPS上运行多个站点,它们都是WordPress站点。我遇到的问题是,我今天创建了一个新站点,并为此创建了一个新的Mysql DB,并使用以下方法分配了一个用户:
GRANT ALL ON dbNew.* TO admin @'localhost' IDENTIFIED BY 'newPassword';
它破坏了我所有其他WP站点的DB连接。
恢复所有其他站点连接的唯一解决方案是对恢复所有其他站点连接的已知工作站点运行上述命令。
GRANT ALL ON dbOld.* TO admin @'localhost' IDENTIFIED BY 'oldPassword';
经过广泛的谷歌搜索,我尝试了所有推荐的方法,包括在安全模式下运行,打开和关闭MySQL,冲洗等等。
我觉得我在这里遗漏了一些明显的东西,或者有一些其他的错误,我过去一直遵循同样的过程,没有任何问题,目前在这个VPS上托管了5个WordPress站点,并且没有硬件限制。
任何帮助都将不胜感激。
发布于 2020-11-22 08:06:22
您正在使用该命令执行两项独立的操作。授予用户对新数据库的访问权限,并更改该用户的密码。您不会为不同数据库的同一用户设置单独的密码。
IDENTIFIED BY在GRANT中的使用在MySQL 5.7中被废弃,根据本文件中的注释
MySQL 5.7中不推荐使用GRANT来定义帐户身份验证特性。相反,使用CREATE或ALTER建立或更改身份验证特征。预期此授权功能将在未来的MySQL发行版中删除。
https://stackoverflow.com/questions/64950220
复制相似问题