Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2794913
  • 博文数量: 423
  • 博客积分: 7770
  • 博客等级: 少将
  • 技术积分: 4766
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-09 11:58
个人简介

Oracle/DB2/Postgresql/Mysql/Hadoop/Greenplum/Postgres-xl/Mongodb

文章分类

全部博文(423)

文章存档

2019年(3)

2018年(6)

2017年(27)

2016年(23)

2015年(30)

2014年(16)

2013年(31)

2012年(73)

2011年(45)

2010年(14)

2009年(30)

2008年(30)

2007年(63)

2006年(32)

分类: DB2/Informix

2011-09-02 11:17:32

数据库实例在数据中存在于两个地方:
1:物理位置:磁盘上,也就是文件系统中。
2:逻辑位置:数据库系统表中,也就是对磁盘文件的配置信息。

删除数据库的过程:
1:删除物理文件,2:删除逻辑信息,即物理文件的配置信息。
以上两个地方同时删除,数据库才真正删除干净。

两种情况删除不了:1:物理文件删除了,但逻辑信息没有删除。(备份失败也会出现这种情况)
2:逻辑信息已经删除了,但物理文件没有删除

出错信息:数据库别名已经存在。

解决办法:
1:如果物理文件已经删除了,那么只要把逻辑信息删除就可以
执行uncatalog dbname就可以了。即把编目信息删除。
2:如果逻辑文件已经删除了,那么只要把物理文件删除就可以了。
到db2相应的目录下,找到需要删除的数据库文件夹,直接删除。这种方法可能有危险:可能删错。
另一种文法:如果物理文件存在,而逻辑编目不存在,只需要重新编目,也就是把物理文件的配置信息追加到系统表中,再执行drop db dbname就可以。这也是很多人提供的方法。
具体: catalog dbname. drop db dbname.






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