导入成功之后,要检查下有没有无效的对象。 如果有把他们编译下。 执行下面的SQL, 如果有,把结果中的命令在运行一下,如果用第三方的工具,如Toad, 要方便很多。 直接在界面上点点句ok了。SELECT UNIQUE OBJECT_TYPE FROM ALL_objects where status = 'INVALID'; select 'ALTER ' || OBJECT_TYPE || ' '||owner||'.' || OBJECT_NAME || ' COMPILE;' from all_objects where status = 'INVALID' and object_type in ('PACKAGE','FUNCTION','PROCEDURE', 'TABLE', 'VIEW', 'SEQUENCE', 'TRIGGER');
SELECT * from dba_users; select 'ALTER PACKAGE ' || OWNER||'.'|| OBJECT_NAME || ' COMPILE body;' from ALL_objects where status = 'INVALID' and object_type in ('PACKAGE BODY'); SELECT UNIQUE OBJECT_TYPE FROM ALL_OBJECTS;
错误代码ORA-29339 tablespace block size 4096 does not match configured block sizes
数据库版本和字符集类型,其它的注意事项和Windows下来回导没有什么区别
创建oracle表空间时报错ORA-29339: tablespace block size 16384 does not match configured block sizes 2007-12-29 14:04原因是由于:db_16k_cache_size初始设置过小引起的。通过命令:SQL〉show parameter db_16k_cache_size;查看。通过命令修改db_16k_cache_size设置:SQL〉alter system set db_16k_cache_size=34603008;然后重新创建通过。
exp/imp 就可以了。 要注意的就是表空间和数据库版本。1. 如果2个数据库版本不同,可能会出现问题。 最好是同版本的。 exp/imp 只能从低版本到高版本。
2. 2个实例的表空间大小和名称要一致。如果不是全库导入,导入之前相关的用户要建好。其他的没有了。
表模式备份: [oracle@roy orcl]$ exp david/david rows=y indexes=n compress=n buffer=65536 file=exp_tianle_090101.dmp log=exp_tianle_090101.log tables=david.tianle; 用户模式备份: [oracle@roy orcl]$ exp david/david owner=david rows=y indexes=n compress=n buffer=65536 file=exp_david__090101.dmp log=exp_david_090101.log; 完全模式备份: [oracle@roy orcl]$ exp david/david rows=y indexes=n compress=n buffer=65536 full=y file=exp_fulldatabase_090101.dmp log=exp_fulldatabase_090101.log; 表模式恢复: [oracle@roy orcl]$ imp david/david fromuser=david touser=david rows=y indexes=n commit=y buffer=65536 file=exp_tianle_090101.dmp log=imp_tianle_090101.log; 用户模式恢复: [oracle@roy orcl]$ imp david/david fromuser=david touser=david rows=y indexes=n commit=y buffer=65536 file=exp_tianle_090101.dmp log=exp_tianle_090101.log; 全库模式恢复: [oracle@roy orcl]$ imp david/david rows=y indexes=n commit=y full=y ignore=y buffer=65536 file=/tmp/exp_fulldatabase_090101.dmp log=/tmp/imp.log;本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/tianlesoftware/archive/2009/10/24/4718366.aspx
导入成功之后,要检查下有没有无效的对象。 如果有把他们编译下。 执行下面的SQL, 如果有,把结果中的命令在运行一下,如果用第三方的工具,如Toad, 要方便很多。 直接在界面上点点句ok了。SELECT UNIQUE OBJECT_TYPE FROM ALL_objects where status = 'INVALID';
select 'ALTER ' || OBJECT_TYPE || ' '||owner||'.' || OBJECT_NAME || ' COMPILE;'
from all_objects where status = 'INVALID'
and object_type in ('PACKAGE','FUNCTION','PROCEDURE', 'TABLE', 'VIEW', 'SEQUENCE', 'TRIGGER');
SELECT * from dba_users;
select 'ALTER PACKAGE ' || OWNER||'.'|| OBJECT_NAME || ' COMPILE body;'
from ALL_objects where status = 'INVALID' and object_type in ('PACKAGE BODY');
SELECT UNIQUE OBJECT_TYPE FROM ALL_OBJECTS;
2007-12-29 14:04原因是由于:db_16k_cache_size初始设置过小引起的。通过命令:SQL〉show parameter db_16k_cache_size;查看。通过命令修改db_16k_cache_size设置:SQL〉alter system set db_16k_cache_size=34603008;然后重新创建通过。