我有一个现有的 MySQL 实例(测试),包含 2 个数据库和几个用户,每个用户对每个数据库都有不同的访问权限。
我现在需要复制其中一个数据库(进入生产环境)和用户与之相关。
复制数据库是easy https://stackoverflow.com/a/21091197/1864054:
Export:
mysqldump --no-data --tables -u root -p secondb >> secondb_schema.sql
Import:
mysql -u root -p -h localhost secondb < secondb_schema.sql
但是,我没有找到一种直接的导出和导入方法users, 来自命令行(mysql内部或外部)。
如何导出和导入user https://stackoverflow.com/a/1135251/1864054,从命令行?
Update:到目前为止,我已经找到了实现此目的的手动(因此容易出错)步骤:
-- lists all users
select user,host from mysql.user;
然后找到它的补助金:
-- find privilege granted to a particular user
show grants for 'root'@'localhost';
Then manually使用上面“show grants”命令的结果中列出的授权创建用户。
我更喜欢更安全、更自动化的方式。有吗?