搜索""的结果
--数据泵IMPDP 导入工具的使用--=================================        数据的导入导出时数据库经常处理的作业之一,Oracle 提供了IMP和IMPDP以及SQL*Loader等工具来完成数据的导入工作,其中IMP服务于早期的9i之前的版本,在10g及后续版本,Oracle 提供了数据泵高速导入工具,本文主要介绍IMPDP的使用方法,关于高速导出工具请参照:数据泵EXPDP 导出工具的使用。SQL*Loader请参照:SQL*Loader使用方法。 一、数据泵的体系结构    数据泵的体系结构在数据泵EXPDP 导出工具的使用已列出,再此不再赘述。 二、IMPDP支持的接口及导入模式    导入接口        使用命令行带参数的        使用命令行带参数文件        使用命令行交互        使用database console(GUI)    几种常用的导入模式        导入表        导入方案     ...
imp的buffer和commit分析  Imp的commit和buffer分析:Imp的commit影响:imp的commit主要用于大表数据插入时减少回滚段的压力,以免出现长时间导入而出现的回滚段过久ora-01555,结合buffer设置则能按照buffer的大小进行分批提交,可以有效的减轻undo压力。但是如果对于插入lob、long、ref、rowid等字段时设置commit=y则会逐条commit,我们都清楚对于批量插入数据逐条commit会降低性能,所以这里需要依据表中的具体信息。而且还存在一个因素则是结合buffer区大小批量commit提交时,如果出现表空间,连接丢失等问题导致imp失败,则可能只提交一批数据,此时带来的影响还是很大的,即使再次插入根据主键筛选依然会出现大量的错误,而imp对这些错误的排查则会降低大量性能,这也可能是oracle默认的imp工具中commit=n缘由吧。Imp的buffer效果生产环境下,oracle 9I下sga大概8G,pga大概6g,需要导入一个2.7g以上的大表到成产库中,由于是同事着手运用imp工具的默认buffer=30K,用时大概一个小时还没有结果,考虑到pga还是很大的,跟同事商议加上buffer=409600000设置buffer大概400M的,15分钟内imp完成。当然运用impdp然后运用parallel=n效率当然更加理想了!首先建好了...
 导出ha 用户的表结构expdp ha/ha directory=dump_dir dumpfile=expdp.dmp logfile=expdp.log schemas=ha content=metadata_only  将表结构数据导入ha用户impdp ha/ha directory=dump_dir logfile=local.impdp.log dumpfile=expdp.dmp 导出HA用户的表数据 expdp ha/ha directory=dump_dir dumpfile=gps_acc.dmp tables=GPS_ACC_STATE content=data_only导出的HA表数据,将导入happy表空间,对应的表结构已经建好。impdp happy/happy directory=dump_dir dumpfile=gps_acc.dmp tables=GPS_ACC_STATE remap_schema=ha:happy  . importing table               "T1"IMP-00058: ORACLE error 30036 encounteredORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS1'IMP-00028: partial import of previous table rolled back: 14351923 rows rolled backIMP-00017: following statement failed with ORACLE error 2264:About to enable con...
ORA-20005: object statistics are locked  SQL> exec dbms_stats.unlock_table_stats(ownname =>'ECC_VIEW',tabname => 'TABLE_TEST1');PL/SQL procedure successfully completedorSQL> EXEC DBMS_STATS.unlock_schema_stats(ownname =>'ECC_VIEW');PL/SQL procedure successfully completed ============(普通用户权限)==SQL> exec dbms_stats.gather_table_stats(ownname =>'ECC_VIEW',tabname => 'TABLE_TEST1',cascade =>TRUE,estimate_percent => 20);PL/SQL procedure successfully completed////////////////执行以下脚本后正常SQL> exec dbms_stats.unlock_schema_stats(ownname =>'test'); PL/SQL procedure successfully completed////////////////////   发现一个用户下统计信息没有生成,查询user_tab_modifications发现变动信息也超过10%没有警告日志执行exec dbms_stats.gather_schema_stats(ownname =>'test',granularity => 'ALL',cascade => true);还是没有生成 然后执行报begin dbms_stats.gather_table_stats(ownname => 'test',tabname=> ...
假设导入用户为happy数据文件存放目录为dump_dir两台服务器oracle系统作oracle数据迁移。#:            mkdir /home/oracle/bakSQL:#    create or replace directory dump_dir as  '/home/oracle/bak';查询:select * from dba_directories where DIRECTORY_NAME='DUMP_DIR';查看目录是否存在 select owner,table_name,grantor,privilege from dba_tab_privs where grantee='HAPPY';  //注意HAPPY大写查看是否有read write权限如果没有读写权限,执行如下语句,赋给sysdb读写DATA_PUMP_DIR权限:GRANT WRITE ON DIRECTORY DUMP_DIR TO HAPPY WITH GRANT OPTION;GRANT READ ON DIRECTORY DUMP_DIR TO HAPPY  WITH GRANT OPTION;导出ha 用户的表结构expdp ha/ha directory=dump_dir dumpfile=expdp.dmp logfile=expdp.log schemas=ha content=metadata_only  将表结构数据导入ha用户impdp ha/ha directory=dump_dir logfile=local.impdp.log dumpfile=expdp.dmp 导出HA用户的表数据 expdp ha/ha directory=dump_dir dumpfile=gps_acc.dmp tables=GPS_ACC_STAT...
 
0

IMP数据时报20001错误

发表者:admin分类:数据库2015-08-19 09:45:12 阅读[2231]
今天IMP数据时报20001错误 IMP-00003: 遇到 ORACLE 错误 20001ORA-20001: Invalid or inconsistent input valuesORA-06512: at "SYS.DBMS_STATS", line 3490ORA-06512: at line 1IMP-00017: 由于 ORACLE 的 20001 错误,以下的语句失败"DECLARE SREC DBMS_STATS.STATREC; BEGIN SREC.MINVAL := '5B342C345D'; SREC.M""AXVAL := '5B342C345D'; SREC.EAVS := 0; SREC.CHVALS := NULL; SREC.NOVALS := ""DBMS_STATS.NUMARRAY(473557201670860000000000000000000000,473557201670860000""000000000000000000); SREC.BKVALS := DBMS_STATS.NUMARRAY(0,1); SREC.EPC := 2""; DBMS_STATS.SET_COLUMN_STATS(NULL,'"BB_ATTACH_VAR"','"VAR_DEF"', NULL ,NUL""L,NULL,1,1,2,srec,3,6); END;"IMP-00003: 遇到 ORACLE 错误 20001ORA-20001: Invalid or inconsistent input valuesORA-06512: at "SYS.DBMS_STATS", line 3490ORA-06512: at line 1  查了些资料,加了statistics=noneimp user/user file=file.dmp full=y statistics=none解决参数说明 exp userid=user...
对象统计信息锁定的解决办法(ORA-20005/ORA-38029)     昨天我从9i R2里导出了几张表,然后导入到11g R2中,在导入成功后我要收集下这些表的信息,结果发现好几张表都没法收集,用DBMS_STATS包显示ORA-20005:object statistics are locked (stattype = ALL),用Analyze命令显示ORA-38029: 对象统计信息已锁定。解决办法很明确,就是解锁。可以从两个层面去处理:A、解锁SchemaDBMS_STATS.UNLOCK_schema_STATS(user);B、解锁单个对象1)先查出被锁定的表select table_name from user_tab_statistics where stattype_locked is not null;然后再解锁对象exec dbms_stats.unlock_table_stats(user,'表名');2)也可直接生成sql脚本select 'exec dbms_stats.unlock_table_stats('''||user||''','''||table_name||''');' from user_tab_statistics where stattype_locked is not null;这里不在生成的sql中用动态的user是为了让执行者明确知道到底是解锁哪个schema下的表,防止误操作。不过,你要特别注意,Oracle为什么会要锁定住统计信息?一般而言,这是为了稳定执行计...
1.并集的运算select name from test1union [all]select name from test2;使用union时,默认将对结果进行排序,union all则不进行排序操作,所以会消耗更少的资源;然而,union all将不进行去重的操作~2.交集的运算select name from test1intersectselect name from test2;Oracle不支持Intersect all关键字!3.差的运算select name from test1minusselect name from test2;Oracle中差的运算不同于SQL标准,在SQL标准中,我们使用以下函数进行差运算select name from test1except [all]select name from test2;
 
0
install JAccelerator (NCOMP)     数据库从10.2.0.1.0升级到10.2.0.4.0,升级报告警告如下:Warnings DBUA has detected that the JAccelerator(NCOMP) is not Installed.Please refre to the Post-installation Tasks chapterin ther Oracle Database Installation Guide for instructions on how to install JAccelerator(NCOMP). 软件下载:下载companion disk网址:http://www.oracle.com/technetwork/database/10201linx8664soft-092456.html 安装companion解压缩gunzip 10201_companion_linux_x86_64.cpio.gzcpio -idmv < 10201_companion_linux_x86_64.cpio SQL> shutdown immediate;安装cd companion/运行runInstallersh   runInstaller 选择Advanced Installation 选择option 2:Oracle Database 10g Products 10.2.0.10 选择install完成安装  将JAccelerator升级到10.2.0.4.0cd Disk1sh runInstaller [oracle@ZSGHRDB01 admin]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.4.0 - P...
 
0

Oracle中转义字符总结

发表者:admin分类:数据库2015-08-15 16:30:48 阅读[2025]
Oracle中转义字符总结  在字段里查找'%',涉及到Oracle的转义字符,现总结如下:SQL> select * from test;TEST--------------------sdd_kkd'ddfsfsadffa%asfs123451%23451%543212%54321%%54321A&B已选择9行。        其中包含特殊的字符分别为%,_,&,有可能包含这些字符的数据含有错误,或者需要查找包含这些字符的数据。SQL> select * from test where test like 'sdd _%' escape ' ';TEST--------------------sdd_kk        转义字符为' ';SQL> select * from test where test like 'sdd\_%' escape '\';TEST--------------------sdd_kk转义字符为'\';SQL> select * from test where test like 'sdd=_%' escape '=';TEST--------------------sdd_kk        转义字符为'=';SQL> select * from test where test like 'sdd/_%' escape '/';TEST--------------------sdd_kk          转义字符为'/';SQL> select * from test where test like 'sddd_%' esca...
    总共269页,当前第123页 | 页数:
  1. 113
  2. 114
  3. 115
  4. 116
  5. 117
  6. 118
  7. 119
  8. 120
  9. 121
  10. 122
  11. 123
  12. 124
  13. 125
  14. 126
  15. 127
  16. 128
  17. 129
  18. 130
  19. 131
  20. 132
  21. 133