本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
Oracle11g下有一个表te_equip,采用双主键方式。表中已经有一部分数据,现在有一csv表格,需要将表格中的数据导入te_equip表中,并更新表te_equip中已经存在csv表格中的数据。这里使用以下方法:先创建一个结果与te_equip一样的表te_equip_bak ,具体如下:create table te_equip_bak as select * from te_equip where 1=2可以使用工具软件之类的先将cvs数据搞成sql语句。再将sql语句导入到te_equip_bak 与te_equip。最后 可以更新数据了。具体方法如下:update te_equip a   set (a.sign_state, a.gold_state, a.operate_id) =       (select b.sign_state, b.gold_state, b.operate_id          from te_equip_bak b         where b.sim = a.sim           and b.bill_num = a.bill_num) where exists (select 1          from te_equip_bak b         where b.sim = a.sim  &...
是否可以用SQL语句直接查询告警日志的内容,即创建一张包含Alert.log内容的表或视图。 直接执行PL/SQL块即可无需创建存储过程了,而且现在支持RAC了。 --drop table alert_log_view; --drop directory bdump; declare path_bdump varchar2(4000); name_alert varchar2(4000); ins_name varchar2(200); begin select value into path_bdump from sys.v_$parameter where name = 'background_dump_dest'; select 'alert_' || value || '.log' into name_alert from sys.v_$parameter where name = 'instance_name'; select value into ins_name from sys.v_$parameter where name = 'instance_number'; if ins_name = '0' then ins_name := ''; end if; execute immediate 'create or replace directory bdump'||ins_name||' as ''' || path_bdump || ''''; execute immediate 'create table ALERT_LOG_VIEW' || ins_name || ' (MSG_line varchar2(4000) ) ' || ' organization external ' || ' (type oracle_loader ' || ...
最近在做数据迁移,发现用数据库泵要比用DML语言(insert)快很多,大概一个8G左右的表数据库几分钟就可以导入成功,而用DML语言需要2-3个小时才能完成。最初以为机器性能不行,想起来最进接触的Linux HugePages相关知识。 通过后来学习发现在数据库内存为AMM管理模式下,不支持Linux HugePages。  关于相关说明:HugePages and Oracle Database 11g Automatic Memory Management (AMM) on Linux (文档 ID 749851.1) Linux HugePages说明:http://blog.csdn.net/zhouyh139/article/details/8662768#comments 查看v$log表,发现绝大多数日志为active状态。遂将DML语言改为并行nologging形式: insert /*+position(t1,4)*/  into  t1  select /*+position(t2,4)*/  * from t2  nolongging; 发现还是不行,依旧很慢。无奈给数据库做了一个statspack。发现问题:  Top 5 Timed Events                                   &n...
 
0

ORACLE数据库异步IO介绍

发表者:admin分类:数据库2016-12-15 17:38:55 阅读[2274]
异步IO概念     Linux 异步 I/O (AIO)是 Linux 内核中提供的一个增强的功能。它是Linux 2.6 版本内核的一个标准特性,当然我们在2.4 版本内核的补丁中也可以找到它。AIO 背后的基本思想是允许进程发起很多 I/O 操作,而不用阻塞或等待任何操作完成。稍后或在接收到 I/O 操作完成的通知时,进程就可以检索 I/O 操作的结果。     Linux IO模型(I/O models)分同步IO模型(synchronous models)和异步IO模型(asynchronous models)。 在同步IO中,线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后才醒来继续执行。而异步IO方式中,线程发送一个IO请求到内核,然后继续处理其他的事情,内核完成IO请求后,将会通知线程IO操作完成了     如果IO请求需要大量时间执行的话,异步文件IO方式可以显著提高效率,因为在线程等待的这段时间内,CPU将会调度其他线程进行执行,如果没有其他线程需要执行的话,这段时间将会浪费掉(可能会调度操作系统的零页线程)。如果IO请求操作很快,用异步IO方式反而还低效,还不如用同步IO方式。    其它关于异步IO与同步IO的细节,可以参考Boost application performance...
先将所属表空间下的所有表统计一下信息declare  i varchar2(40);begin  for i in (select t.TABLE_NAME              from user_tables t             where t.TABLESPACE_NAME = 'T3') loop    execute immediate 'analyze table ' || i.table_name ||                      ' compute statistics';  end loop;end;/统计表空间或用户模式下的表信息。最后检查下所属表中行数信息。select t.owner,t.table_name,t.num_rows from dba_tables t where t.owner='T3' order by 3 desc
ORA-20005: object statistics are locked (stattype = ALL) 解决方法执行统计信息时,报错:begin             DBMS_STATS.GATHER_TABLE_STATS (              ownname => '"TAG3"',          tabname => '"CITY_INFO_T"',          estimate_percent => 10          );          end;执行请求的操作时遇到错误:ORA-20005: object statistics are locked (stattype = ALL)ORA-06512: 在 "SYS.DBMS_STATS", line 24281ORA-06512: 在 "SYS.DBMS_STATS", line 24332ORA-06512: 在 line 1供应商代码 20005使用此方法解决问题:SQL> exec dbms_stats.unlock_schema_stats(ownname => 'TAG3');PL/SQL procedure successfully completed再次执行编译信息时,执行正常。declare  i varchar2(40);begin  for i in (select t.TABL...
SQL> drop table te_equip;drop table te_equip           *第 1 行出现错误:ORA-02449: 表中的唯一/主键被外键引用检查哪些表的外键引用了要删除的表的唯一/主键.select A.*  from user_constraints A, user_constraints B WHERE b.table_name = 'TE_EQUIP'   and a.constraint_type = 'R'   and a.r_constraint_name = b.constraint_name;会得到外健关系表的信息,可以查看相联的表。生成所有引用要删除表的外键的创建语句.select 'select dbms_metadata.get_ddl(''REF_CONSTRAINT'',''' ||       A.CONSTRAINT_NAME || ''') FROM DUAL;'  from user_constraints A, user_constraints B WHERE b.table_name = 'TE_EQUIP'   and a.constraint_type = 'R'   and a.r_constraint_name = b.constraint_name;  ALTER TABLE "NEUDDC"."TH_TARGETONLINE" ADD CONSTRAINT "FK_TH_TARGETONLINE1" FOREIGN KEY ("SIM")      REFERENCES "NEUDDC".&qu...
 
0

ORACLE编译失效对象

发表者:admin分类:数据库2016-12-01 10:30:55 阅读[1623]
在日常数据库维护过程中,我们会发现数据库中一些对象(包Package、存储过程Procedure、函数Function、视图View、同义词.....)会失效,呈现无效状态(INVALID)。有时候需要定期检查数据库中存在哪些失效对象,对于存在异常的对象需要重新编译,有些自动失效的对象,一般会在下次调用的时候,会被重新编译,所以这些不需要人工干预。那么为什么对象突然会失效呢?又如何快速、高效的编译失效对象呢?哪些失效的对象不需要我们去重新编译呢?数据库对象失效原因数据库对象失效的原因很多,下面大致归纳了一些常见的原因(有些漏掉的,希望大家补充):1: 当被引用对象的结构变更时,都会使得相关的依赖对象转变为INVALID状态。数据库中的对象(存储过程,函数,包,视图,触发器),它们往往需要直接或者间接的引用其它对象,对象的依赖包括直接和间接二种,其中直接依赖是指存储对象直接依赖于被引用对象,而间接依赖是指对象间接依赖于被引用对象要查看被引用的对象,可以通过下面SQL查看select * from dba_dependencies where name='&objectname'; select * from all_dependencies where name='&objectname'; select * from user_dependencies where name=...
使用delete 时并没有报错,使用truncate 清空重置表时会报错。SQL>  truncate table te_equip;truncate table te_equipORA-02266: 表中的唯一/主键被启用的外键引用ORA-02266: unique/primary keys in table referenced by enabled foreign keys 有时候对应的中文错误提示为:ORA-02266: 表中的唯一/主键被启用的外部关键字引用,一般出现这个错误,是因为表中的主键被其它表的外键所引用,导致删除数据时出错SQL> alter table te_equip disable primary key cascade;表已更改。SQL> truncate table te_equip;表已截掉。SQL> alter table te_equip enable primary key;表已更改。 SQL> alter table TH_TARGETONLINE enable constraint FK_TH_TARGETONLINE1;表已更改。注意外键与约束的区别。可以通过下面脚本查看一下涉及该表主键的外键约束信息。select c1.table_name,       c1.constraint_name,       dcc1.column_name,       c2.table_name,       c2.constraint_name,       d...
利用sqldeveloper4.5工具生成的plsql语句,以供参考。1,编译无效视图,注意修改变量与对应的账号表名。begin  FOR cur IN (SELECT OBJECT_NAME, OBJECT_TYPE, owner                FROM all_objects               WHERE object_type = 'VIEW'                 and owner = 'LWLK'                 AND status = 'INVALID') LOOP    BEGIN      if cur.OBJECT_TYPE = 'PACKAGE BODY' then        EXECUTE IMMEDIATE 'alter ' || cur.OBJECT_TYPE || ' "' || cur.owner ||                          '"."' || ...
    总共51页,当前第17页 | 页数:
  1. 7
  2. 8
  3. 9
  4. 10
  5. 11
  6. 12
  7. 13
  8. 14
  9. 15
  10. 16
  11. 17
  12. 18
  13. 19
  14. 20
  15. 21
  16. 22
  17. 23
  18. 24
  19. 25
  20. 26
  21. 27