【问题标题】:DB2 - How to ensure the tablespace is clean to dropDB2 - 如何确保表空间是干净的以删除
【发布时间】:2013-06-18 08:26:41
【问题描述】:

由于某种原因,我在 DB2 中创建了一些表空间用于测试,我意识到如果我没有指定应该在哪个表空间中创建表,DB2 会为我选择它。

问题是,我想删除未使用的表空间,但又怕会删除一些我不知道的东西。我在删除未使用的表空间后检查了表、索引和序列,并且行数是相同的。这种检查是否足以断定表空间可以被删除?

【问题讨论】:

    标签: database db2 tablespace


    【解决方案1】:

    您可以查询目录以检索表及其存储位置。

    select tabschema, tabname, tbspaceid, tbspace
    from syscat.tables 
    where tabschema not like 'SYS%'"
    

    您可以更改 where 条件,以过滤您要删除的表空间。

    【讨论】:

    • 您应该在查询中包含INDEX_TBSPACELONG_TBSPACE 列——DB2 可以将索引和LOB 数据从基表数据写入不同的表空间。
    • 您也可以考虑使用SYSCAT.DATAPARTITIONS 目录视图而不是SYSCAT.TABLES - 范围分区表将在表空间的SYSCAT.TABLES 中显示NULL。
    猜你喜欢
    • 1970-01-01
    • 2012-09-23
    • 1970-01-01
    • 2010-09-16
    • 2014-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多