Chinaunix首页 | 论坛 | 博客
  • 博客访问: 259032
  • 博文数量: 56
  • 博客积分: 1190
  • 博客等级: 少尉
  • 技术积分: 640
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-21 17:05
文章分类

全部博文(56)

文章存档

2014年(2)

2013年(4)

2012年(46)

2011年(4)

我的朋友

分类: LINUX

2012-05-16 11:00:47


今天安装了个测试环境,将数据库的数据导了过来,再导出的时候提示错误。

#mysqldump -uroot -p testdb > test.sql

mysqldump: Got error: 1449: The user specified as a definer (‘xxx’@'xxxxxx’) does not exist when using LOCK TABLES

xxx用户是在正式环境建立的用户,但是我是整个数据库备份的,用户和权限应该也会导入才对。查看user表也确实存在此用户。从网上看的资料解决备份是给这个用户增加权限。登入Mysql

mysql> grant all privileges on testdb.* to xxx@’xxxxxx’ identified by ’123456′;

再次导出,成功。

但是将导出的文件导入一个新的数据库,再导出的话还是会出现这个问题,总不能每次都要建立这个个没有用的用户吧。

最后的解决办法是编辑导出的备份文件,将xxx@xxxxxx都改成root@localhost,重新导入就没问题。

阅读(2893) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~