0
我用命令获取的数据库的一个MySQL转储:填充mysql数据库
mysqldump --single-transaction --all-databases --flush-privileges -h HOST -u USER -p PASSWORD
我故意用--all-databases
标志,以确保我得到了所有我所创造的用户和他们授予的权限。但是当我以root用户的身份运行导入新数据库时,出现此错误:Access denied for user 'root'@'%' to database 'mysql'
是否有将用户和权限从一个数据库复制到另一个数据库的不同方法?
我想这适用于此。但这有点痛苦。有没有更简化的方法?谢谢! – jamesatha
可能有更简化的方法。这就是我如何做到的。至于采取MySQL数据库的mysqldump,然后试图将批量导入到不同的数据库中......这不是我会做的事情,因为mysql数据库中有很多表除了user,db和tables_priv。我还没有看到(或寻找)关于做这样的事情的任何指示/警告。至于实际的错误信息,我期望这是因为用户'root @'%''没有被定义或错误的密码。 DML更改特权表需要FLUSH PRIVILEGES才能生效。 – spencer7593