设置oracle11g空表exp导出
1、Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出。
2、设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment。
在sqlplus中,执行如下命令:
SQL>alter system set deferred_segment_creation=false;
查看:
SQL>show parameter deferred_segment_creation;
该值设置后只对后面新增的表产生作用,对之前建立的空表不起作用。
3、可以使用手工为空表分配Extent的方式,来解决导出之前建立的空表的问题。说明如下:
3.1 使用ALLOCATE EXTENT的说明
使用ALLOCATE EXTENT可以为数据库对象分配Extent。其语法如下:
-----------
ALLOCATE EXTENT { SIZE integer [K | M] | DATAFILE 'filename' | INSTANCE integer }
-----------
可以针对数据表、索引、物化视图等手工分配Extent。
ALLOCATE EXTENT使用样例:
ALLOCATE EXTENT
ALLOCATE EXTENT(SIZE integer [K | M])
ALLOCATE EXTENT(DATAFILE 'filename')
ALLOCATE EXTENT(INSTANCE integer)
ALLOCATE EXTENT(SIZE integer [K | M] DATAFILE 'filename')
ALLOCATE EXTENT(SIZE integer [K | M] INSTANCE integer)
针对数据表操作的完整语法如下:
-----------
ALTER TABLE [schema.]table_name ALLOCATE EXTENT [({ SIZE integer [K | M] | DATAFILE 'filename' | INSTANCE integer})]
-----------
故,需要构建如下样子简单的SQL命令:
-----------
alter table aTabelName allocate extent
-----------
3.2 构建对空表分配空间的SQL命令,
查询当前用户下的所有空表(一个用户最好对应一个默认表空间)。命令如下:
-----------
SQL>select table_name from user_tables where NUM_ROWS=0;
-----------
根据上述查询,可以构建针对空表分配空间的命令语句,如下:
-----------
SQL>Select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0
-----------
批量输出上述生成的SQL语句,建立C:\createsql.sql,其内容如下:
-----------
set heading off;
set echo off;
set feedback off;
set termout on;
spool C:\allocate.sql;
Select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
spool off;
-----------
执行C:\createsql.sql,命令如下:
-----------
SQL>@ C:\createsql.sql;
-----------
执行完毕后,得到C:\allocate.sql文件。
打开该文件会看到,已经得到对所有空表分配空间的命令SQL语句。
3.4 执行SQL命令,对空表分配空间:
执行C:\allocate.sql,命令如下:
-----------
SQL>@ C:\allocate.sql;
-----------
执行完毕,表已更改。
3.4 此时执行exp命令,即可把包括空表在内的所有表,正常导出。
另外:Oracle11g中,对密码是大小写敏感的,即密码中的字母是区分大小写的。
在Oracle10g中及以前,密码中的字母大小写无所谓。
设置oracle11g空表exp导出的更多相关文章
- 解决Oracle11g空表无法导出的问题
Oracle11g 新增參数deferred_segment_creation ,建库的时候默认值为true,意思是延时载入,当表中不存在数据的时候,不为这个表创建空间,当你导出的时候会发现非常多表 ...
- oracle11g空表不能导出记录
select 'alter table '||table_name||' allocate extent(size 64k);' from tabs t where not exists (selec ...
- 轻松解决oracle11g 空表不能exp导出的问题
轻松解决oracle11g 空表不能exp导出的问题 [引用 2012-9-22 18:06:36] 字号:大 中 小 oracle11g的新特性,数据条数是0时不分配segment,所以就不 ...
- Oracle11g空表导出方法
今天凌晨在客户现场进行一个Oracle11g的数据库迁移,习惯性的用了exp/imp,然后在新的数据库发现,空表根本没有exp出来,然后查资料,发现了如下信息:[ORACLE 11G在用EXPORT导 ...
- Oracle 11G在用EXP 导出时,空表不能导出解决
Oracle 11G在用EXP 导出时,空表不能导出解决 (转)(.http://wanwentao.blog.51cto.com/2406488/545154 11G中有个新特性,当表无数据时,不分 ...
- 解决Oracle 11g在用EXP导出时,空表不能导出
实践结论可行,看"2.解决办法" 一.问题原因: 11G中有个新特性,当表无数据时,不分配segment,以节省空间 1.insert一行,再rollback就产生 ...
- 【转】解决Oracle 11g在用EXP导出时,空表不能导出
一.问题原因: 11G中有个新特性,当表无数据时,不分配segment,以节省空间 .insert一行,再rollback就产生segment了. 该方法是在在空表中插入数据,再删除,则产生segme ...
- oracle 11g 空表也导出
查询空表 并导出修改空表语句 select 'alter table '||table_name||' allocate extent;' from user_tables where num_row ...
- oracle 11g设置打开空表extent储存块
sql>alter system set deferred_segment_creation=false; sql>show parameter deferred_segment_crea ...
随机推荐
- 基本上,把switch,用设计模式代替,肯定是bug和过度设计。想想,本来修改一个文件几行代码可以解决的问题,变成修改3-6个类才能实现一样的功能。不是傻是什么?
那些迷信设计模式的人,来修改一下这个方法吧.看看你最终的代码膨胀为几倍... public virtual PasswordChangeResult ChangePassword(ChangePass ...
- ExtJs 添加员工 实例 ---- 锚点布局 anchor 可自动伸缩
代码如下: <script type="text/javascript"> Ext.onReady(function () { // 创建一条记录行, job 为 di ...
- read/write数据读写传输方式(转)
前言 笔者本打算撰写一篇讲解标准I/O(缓存I/O)的博文,但是发现已经有网友做过同样的工作,并且工作质量上乘,特转载于此. 原文地址http://lenky.info/archives/2012/0 ...
- jQuery实例-简单选项卡-【一些常见方法(2)-练习】
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- pngfix 实现Png图片透明效果
1.http://www.jb51.net/codes/67324.html 2.DD_belatedPNG工具
- Centos7 设置IPtables
entOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.service #停止fire ...
- python使用mysqldb连接数据库操作方法示例详解
这篇文章主要介绍了python mysqldb使用方法,大家参考使用 复制代码代码如下: # -*- coding: utf-8 -*- #mysqldb # site www.jbxue.com ...
- centos6.5 mysql配置整理
安装 // 安装mysql yum -y install mysql-server //设置开机启动 chkconfig mysqld on //启动MySql服务 service mysqld st ...
- 一步步学习ASP.NET MVC3 (14)——Route路由
请注明转载地址:http://www.cnblogs.com/arhat 由于今天是星期六,所以多写几篇,感觉前几天的忙碌没有及时发布文章,趁着周末老魏尽力的多写几篇文章.因为本系列基本上快结束了,所 ...
- 肾果手机App Store切换区域(无需Visa或者万事达)
8月份在肾果官网买了个touch6,有时候需要换区去墙外下载app,然而一个个国家都要输入Visa或者万事达卡...今天终于找到一个不用输入信用卡号的区域:Canada!!! 办法(适用于8.X,7. ...