在Debian 4.0(Etch)上运行MySQL 5.0.32。
我试图在同一台服务器上完全克隆一个WordPress MySQL数据库(结构和数据)。 我试图转储到一个.sql文件,并从命令行导入到一个新的空数据库,但导入失败,错误说用户没有“SHOW VIEW”或“CREATE VIEW”特权。 用PHPMyAdmin尝试它也不起作用。 我也试着用MySQL root用户(虽然不是“root”)来做这个事情,但是它显示了“Access Denied”错误。 我非常困惑,问题在哪里。
克隆一个MySQL数据库和授予用户帐户的所有权限的任何指针会很好(特别是对于MySQL 5.0.32)。
谢谢!
更新:在这个问题上增加更多的清晰度。
对现有用户作品的SHOW GRANTS(授予的所有权限)。
我创build了一个新的用户和数据库。 这是我用grant命令看到的。
$ mysql -A -umyrootaccount --password=myrootaccountpassword mysql> grant all privileges on `newtarget_db`.* to 'newtestuser'@'localhost'; ERROR 1044 (42000): Access denied for user 'myrootaccount'@'localhost' to database 'newtarget_db' mysql> grant all privileges on `newtarget_db`.* to 'existingsourcedbuser'@'localhost'; ERROR 1044 (42000): Access denied for user 'myrootaccount'@'localhost' to database 'newtarget_db'
授予和特权存储在mysql数据库中,而不是存储在您克隆的数据库中。
在源服务器上SHOW GRANTS FOR user@host执行SHOW GRANTS FOR user@host ,然后对目标服务器执行相同操作。 你可能会发现那里的差异。