本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
ALERT LOGWarning: VKTM detected a time drift.Time drifts can result in an unexpected behavior such as time-outs. Please check trace file for more details.CauseThis problem is due to the Bug 11837095 - "TIME DRIFT DETECTED" APPEARS INTERMITTENTLY IN ALERT LOG"SolutionTime drift" error is a " message which can be ignored, to remove the "Warning: VKTM detected set event 10795 or Apply patch 11837095SQL> alter system set event="10795 trace name context forever, level 2" scope=spfile;
oracle 11g ORA-01422实际返回的行数超出请求的行数insert into te_user (PSN_ID, PSN_ACCOUNT, PSN_PWD, PSN_NAME, PSN_DESC, PSN_LEVEL, HISTORY_PWD1, HISTORY_PWD2, HISTORY_PWD3, TEMP_PWD, BILL_NUM, ISVALUE, SIM, ISMSG_LOGIN, VALU_ETIME, ISMSG, TEMP_PWD_TIME, HISTORY_PWD4, BOTTOMLEFTX, BOTTOMLEFTY, TOPRIGHTX, TOPRIGHTY, STARTTIME, UPDATETIME, SECURITY_FLAG) values ('527be121a32e1', '15908000000', '72IuaAS8Wj, null, null, '1', 'vInaLBzHJ, null, null, null, '9003000000', null, '15908000000', null, 1487590404, null, null, null, 411288728, 110098230, 411455622, 110234034, 1487217447, null, 1) 第 1 行出现错误:ORA-01422: 实际返回的行数超出请求的行数ORA-06512: 在 "CM.AFTER_INSERTUSER_GROUP", line 10ORA-04088: 触发器 'CMAFTER_INSERTUSER_GROUP' 执行过程中出错查看对应触发器,脚本内容如下:CREATE OR REPLACE TRIGGER after_insertuser_group after insert on te_user for each rowdeclare v_group_id VARCHAR2(50);...
Question: I'm getting the "ORA-07445: exception encountered: core dump" error message and I cannot understand the meaning of the core dump file. How do you resolve the ORA-07445 error? The trace file notes:Exception signal: 11 (SIGSEGV), code: 1 (Address not mapped to object), addr: 0x0, PC: [0x1024ef000, opidsa()+480]*** 2015-03-29 16:15:22.349ksedmp: internal or fatal errorORA-07445: exception encountered: core dump [opidsa()+480] [SIGSEGV] [Address not mapped to object] [0x000000000] [] []Current SQL statement for this session:Select /*+ CHOOSE */ object_name ObjectName, object_type ObjectType from user_objects where object_name = :OBJNAME order by 2 Answer: The ORA-07445 is a very generic error, OS dependent, and almost always requires logging a service request (SR) with Oracle Technical support on MOSC. See Note 153788.1 titled "Troubleshoot an ORA-600 or ORA-7445 Error Using the Error Lookup Tool" to find the...
查看oracle参数包换隐式参数信息方法:select x.ksppinm name, y.ksppstvl value, x.ksppdesc describ from sys.x$ksppi x, sys.x$ksppcv y where x.indx = y.indx and x.ksppinm like '%optimizer_connect%'
查看数据文件的使用情况包括内容:数据文件大小,已经used空间,free空间,hwm信息select /*+ ordered use_hash(a,b,c) */ a.file_id,a.file_name,a.filesize, b.freesize, (a.filesize-b.freesize) usedsize, c.hwmsize, c.hwmsize - (a.filesize-b.freesize) unsedsize_belowhwm, a.filesize - c.hwmsize canshrinksize from ( select file_id,file_name,round(bytes/1024/1024) filesize from dba_data_files ) a, ( select file_id,round(sum(dfs.bytes)/1024/1024) freesize from dba_free_space dfs group by file_id ) b, ( select file_id,round(max(block_id)*8/1024) HWMsize from dba_extents group by file_id) c where a.file_id = b.file_id and a.file_id = c.file_id order by unsedsize_belowhwm desc结果说明:File_id : 文件编号File_name: 文件名称File_size: 数据文件占用磁盘空间大小Freesize:文件中被标记为free的空间大小Usedsize: 使用的空间大小。Hwmsize: 已...
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...
异步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
总共51页,当前第17页 | 页数: - 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
最新评论