兴海北路

---男儿仗剑自横行
<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

  • 随笔 - 85
  • 文章 - 0
  • 评论 - 17
  • 引用 - 0

常用链接

留言簿(6)

随笔分类

随笔档案

收藏夹

全是知识啊

搜索

  •  

最新评论

阅读排行榜

评论排行榜

mysql备份与恢复时两个错误解决办法
作者: falcon   发表日期: 2007-01-19 21:11   复制链接



1. ERROR 1062 (23000) at line 1936: Duplicate entry ' ' for key 2

这个错误是我在恢复数据库的时候遇到的,我从mysql4.1.7的版本里头用
Quote:

mysqldump -u user_name -p db_name > db_name.sql


备份了数据,准备恢复到mysql5.0.12中,但是新版本对primary key的检查更严格
因此,在我这样恢复的时候就出现了上面的错误
Quote:

mysql -u user_name -p db_name < db_name.sql



解决办法:

在插入数据的时候忽略掉那个重复的项目,即在insert后面增加ignore,那么这么多的插入语句,怎么一条一条的加入呢,办法很简单,用sed
Quote:

sed -e 's/INSERT INTO/INSERT ignore INTO/g' db_name.sql > db_name_ignore.sql



2. ERROR 1005 (HY000): Can't create table

有时候在用
Quote:

mysql -u user_name -p db_name < db_name.sql


恢复数据库的时候,可能出现这样的问题
但是,有时候可以这么简单的解决

解决办法:把数据库删了,重新创建一个,然后再把数据库导入进去
Quote:

shell> drop database db_name
shell> create database db_name


然后再导入数据用mysql -u user_name -p db_name < db_name.sql



补充:

当然,可能错误的原因并不一样哦,另外在这里你会发现shell是多么有用,所以诸如sed,grep,awk,uniq,sort,netstat,tracepath等等一些常见的工具最好还是花费一些时间认真学习一下吧。

posted on 2008-03-14 16:09 随意门 阅读(410) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理