zoukankan      html  css  js  c++  java
  • 解决Oracle备份时,无法备份空表的问题

    为什么存在空表无法exp导出:

    如果当前用户下的数据库中存在空表时,执行exp备份时由于该表新建时,并没有向其中插入数据,那么这个表不会立即分配extent,也就是不占数据空间,只有当你insert数据后才分配空间。这样可以节省少量的空间。但是传统的exp不能将其导出了。

    1、查询当前用户下的所有记录数为空的表:

    select TABLE_NAME from user_tables t where t.NUM_ROWS = 0 or t.NUM_ROWS is null;

    2:生成修改语句,构建如下样子简单的SQL命令:

    select 'alter table '||table_name||' allocate extent;' from user_tables t where t.NUM_ROWS = 0 or t.NUM_ROWS is null;

    3、将查询结果全选,右键复制后,粘贴到新的SQL Window执行即可。

    仅做交流参考。
  • 相关阅读:
    redis
    docker :no such file or directory
    删除Linux的用户
    lunux系统安全
    centos7.4yum错误
    POI2014 HOT-Hotels
    POI2009 KON-Ticket Inspector
    CF140E New Year Garland
    CF392B Tower of Hanoi
    落谷 P2401 不等数列
  • 原文地址:https://www.cnblogs.com/YoungVin/p/12981138.html
Copyright © 2011-2022 走看看