mysql - 将主机访问权限重新分配给 MySQL 用户

我有几千个 MySQL 用户都设置为允许从特定主机访问。问题是现在我将拥有两台机器(将来会更多),它们需要使用同一个帐户来访问它们的每个数据库。

我想要一种快速简便(尽可能自动化)的方式来运行和修改每个用户帐户的主机部分以适应内部网络通配符。例如:

'bugsy'@'internalfoo' has access to the 'bugsy' DB.

我现在想允许从内部网络的任何地方进行错误访问

'bugsy'@'10.0.0.%' has access to the 'bugsy' DB.

最佳答案

接受的答案只是重命名了用户,但权限被留下了。

我建议使用:

RENAME USER 'foo'@'1.2.3.4' TO 'foo'@'1.2.3.5';

根据MySQL documentation :

RENAME USER causes the privileges held by the old user to be those held by the new user.

https://stackoverflow.com/questions/1913984/

相关文章:

mysql - 从另一列计算的列?

MySQL - 使用 LIMIT 更新查询

mysql - 在 MySQL 中计算运行总计

mysql - 在 MySQL 查询中结合 UNION 和 LIMIT 操作

mysql - 从mysql中的表中删除所有记录

mysql - 如何在 Amazon RDS 数据库服务器实例上运行命令 "mysqladmin f

mysql - 查找和替换整个 MySQL 数据库

mysql - 如何向现有表添加唯一键(具有非唯一行)

mysql - 在 Windows 7 上重新启动 mysql 服务器

sql - 使用 GROUP BY 查询获取行数