aul 测试
-------------------aul5 ----------test0-------------------------select file#,rfile#,name from v$datafilerac1-> ./...bin Register Code: VDTL-ZSMR-RBBL-ATFV-JBKKAUL : AnySQL UnLoader(MyDUL) for Oracle 8/8i/9i/10g/11g, release 5.1.2(C) Copyright Lou Fangxin 2005-2010 (AnySQL.net), all rights reserved.AUL> UNLOAD TABLE USER$;2011-10-12 23:39:042011-10-12 23:39:04AUL> UNLOAD TABLE OBJ$;2011-10-12 23:39:142011-10-12 23:39:14 --这个时候查询txt文件 你会发现 里面是空的AUL> open db10g.cfg --而
平均事务时间
1.cpu timeOracle引入CPU time是在9iR2版本,cpu time是衡量一个数据库负载的重要指标,可以将它看成是“CPU used by this session”的收集汇总。 9iR2之前,top 5部分称之为“Top 5 Wait Events”,其中cpu time并不包含在top 5内,该部分是纯粹的等待事件的汇总。而在9iR2之后,Top 5称之为“top 5 timed events”,从字面上也可以发现二者的区别。oracle将cpu time作为一个事件纳入top 5中,新的top 5包含cpu time和waited time 2部分,也就是db time。 我们可以通过cpu time与waited time的比值,来了解库的负载和运行情况,通常
ocr votedisk 维护一
最近对OCR的操作,用root用没反映 又不能执行成功,郁闷,只有用sudo才可以成功,不知道哪里出了点问题!---其实也是个重新创建的过程重启每个节点(reboot),并查看群集状态$ crs_stat -tCRS-0184: Cannot communicate with the CRS daemon.显示无法启动2. 在每个节点,执行rootdelete.sh (root执行)# $ORA_CRS_HOME/install/rootdelete.shShutting down Oracle Cluster Ready Services (CRS):OCR initialization failed accessing OCR device: PROC-26: Error while accessing the physical storage Operating System error [No such
bbed(二)
-----------bbed x and f and changed file header----------- --寻找数据类型 select CASE DATA_TYPE WHEN 'NUMBER' THEN 'n' WHEN 'DATE' THEN 't' when 'VARCHAR2' then 'c' else 'c' end case from user_tab_columns where table_name = 'LIHJ'--打印数据 BBED> x /rnntnnccntntntnntnnnncnncntcrowdata[1243] @7890 -------------flag@7890: 0x2c (KDRHFL, KDRHFF, KDRHFH)lock@7891: 0x00cols@7892: 25col 0[2] @7893: 2 col 1[4]
bbed(一)
1 更新和删除数据1,查询所在文件的具体位置--------select dbms_rowid.rowid_relative_fno(t.rowid) || '_' || dbms_rowid.rowid_block_number(t.rowid), t.status from lihj t;2,确定修改--------修改lihjEM 为system ,也就是改成原来的3,登陆bbed blockedit-----bbed parfile=bbed.parshowBBED> show4,定位block-------set block 2365,bbed操作--------p kdbr --查看有几行p *kdbr[0] p *kdbr[1] --打印和定位第几行 2c 表示数据存在 3c 表示被删除x /r --16进制显示
oradebug(一)
sqlplus -prelim /nolog;sqlplus /nologSQL> conn / as sysdba SQL> oradebug setmypidSQL> oradebug setospid 3188 ------other processSQL> oradebug unlimitSQL> oradebug dump systemstate 10SQL> oradebug event 10046 trace name context forever,level 4 SQL> oradebug event 10046 trace name context offSQL> oradebug event 942 trace name errorstack level 3SQL> oradebug dump controlf 10SQL> oradebug dump file_hdrs 10SQL> oradebug dumplistSQL> oradebug tracefile_name[@mor
dbms_session.free_unused_user_memory; 可以释放 部分的PGA内存
--实验步骤【经常看才知道 这些数据的含义】--运行下面的程序很多次select * from tbak where rownum <&dd order by 1 desc;select * from tbak where rownum <&dd order by 1 ;select * from tbak where rownum <&dd order by 1 desc;....select * from tbak where rownum <&dd order by 1 desc;select * from tbak where rownum <&dd order by 1 ;select * from tbak where rownum <&dd order by 1 desc;--回话关键信息PGAselect * from v$sesstat a, v$statname b where a.statistic# = b.
一些X$表的小结
1.X$KTUXE——[K]ernel [T]ransaction [U]ndo Transa[x]tion [E]ntrysys@ORALOCAL(192.168.0.22)>descX$KTUXE##主要用来查看scn和smon正在清理的undo block Name Null? Type ----------------------------------------------------- -------- --------------------- ADDR RAW(4) INDX NUMBER INST_ID
bbed --暂时自己会的东东
1 创建配置bbed$ make -f ins_rdbms.mk $ORACLE_HOME/bin/bbedmake: 1254-002 Cannot find a rule to create target /cadrasu01/app/oracle/product/9.2.0/bin/bbed from dependencies.Stop.$ make -f ins_rdbms.mk BBED=$ORACLE_HOME/bin/bbed $ORACLE_HOME/bin/bbed$ pwd/cadrasu01/app/oracle/product/9.2.0/bin$ cat filelist.txt1 /dras11/oradata/astca/system01.dbf 125 /dras21/astca/system02.dbf 133 /dras20/astca/test01.dbf $ cat par.bbdblocksize=8192listfile=filelist.txtmode=edit bb
坏块快速恢复
使用10231诊断事件,在做全表扫描的时候跳过坏块 可以在session级别设定: ALTER SESSION SET EVENTS '10231 TRACE NAME CONTEXT FOREVER, LEVEL 10'; 也可以在数据库级别上设定,在初始化参数中加入:event="10231 trace name context forever, level 10" , 然后重启数据库。 然后从存在坏块的表中取出不存在坏块的数据,执行以下的语句: CREATE TABLE salvage_emp AS SELECT * FROM corrupt_table; 最后rename生成的corrupt_table为原来表的名字,并重建表上的索引和限制。使用dbms_repair包进行
Oracle 10G R2 RAC 日常管理
Oracle 10G R2 RAC 日常管理 一、使用srvctl管理RAC数据库 [root@NODE01 bin]# pwd/orac/crs/bin # srvctl在$CRS_HOME/bin目录下,它可以在任何节点上维护。[root@NODE01 bin]# ./srvctlUsage: srvctl <command> <object> [<options>] command: enable|disable|start|stop|relocate|status|add|remove|modify|getenv|setenv|unsetenv|config objects: database|instance|service|nodeapps|asm|listenerFor detailed help on each command and object and its options use: srvctl <command> <obje
v$session_wait 相关
v$session_waitSID: session标识EVENT: session当前等待的事件,或者最后一次等待事件。WAIT_TIME: session等待事件的时间(单位,百分之一秒)如果本列为0,说明session当前session还未有任何等待。SEQ#: session等待事件将触发其值自增长P1, P2, P3: 等待事件中等待的详细资料P1TEXT, P2TEXT, P3TEXT: 解释说明p1,p2,p3事件附注:1.State字段有四种含义﹕Waiting:SESSION正等待这个事件。Waited unknown time:由于设置了timed_statistics值为false,导致不能得到时间信息。表示发生了等待,但时间很短。Wait short time:表示发生了等待
oracle 坏块问题急救
ALTER SYSTEM SET EVENTS ‘10231 trace name context forever,level 10’; CREATE TABLE tg_bill03_tmp as select * from tg_bill03; ------------------AlertSID.log:Ora-1578 file# (RFN) block#Ora-1110 file# (AFN) block#Ora-600 file# (AFN) block#其中RFN表示的是relative_fno AFN表示的是file_id Select file_name, tablespace_name, file_id “AFN”, relative_fno “RFN” From dba_data_files;Select file_name, tablespace_name, file_id, relative_fno“RFN” From dba_temp_files; ¡¤具体处理方法的介绍(1) 先
Oracle Label Security
--怀疑是应用程序连接“中间件”有关系--触发器验证1 查询数据库内部调用这个包的代码语句 SELECT * FROM ALL_SOURCE where lower(text) like '%lbac_events.logon%'2 修改触发器 验证是否是数据库登录引起的问题 LBACSYS.lbac$logon 加入代码 insert into aa values(dbms_standard.login_user); 观察1分钟 看看aa表数据是否变化3 如果变化较大说明是由于客户端登录引起的,一直在调用这个触发器 1 设置跟踪 dbms_system.SET_SQL_TRACE_IN_SESSION(12,19,true);3 格式跟踪文件 tkprof colm_ora_2056.trc trace.txt print=100
FATAL ERROR IN TWO-TASK SERVER: error = 12569
现象:数据库警告日志文件不停的报错误 查看跟踪文件ATAL ERROR IN TWO-TASK SERVER: error = 12569aix 5.3 oracle 9205Oracle process number: 0FATAL ERROR IN TWO-TASK SERVER: error = 12569ksedmp: internal or fatal errorCurrent SQL statement for this session: no session其他的都是二进制的跟踪信息[@more@]
Oracle跨版本导出EXP-00003错误的解决()
Oracle跨版本导出EXP-00003错误的解决 当Oracle数据库中,使用不同版本的exp工具进行数据库导出时,有时候会遇到类似如下错误:EXP-00003: no storage definition found for segment(11, 307)EXP-00003: no storage definition found for segment(11, 523)EXP-00003: no storage definition found for segment(11, 643)EXP-00003: no storage definition found for segment(11, 275)"EXP-00003: no storage definition found for segment ……"错误,和Oracle的一个小Bug相关,可以通过修改一个导出相关的View来解决。在目标数
exp导出命令中的query选项(转)
oracle中的exp导出工具相信很多人都用过,但是很多人都只是通过最普通的方式用,很多选项都没有用过,也有很多选项不知道怎么用,前两天因为工作需要,要分批导出一张表中的数据,于是想到query选项,可是,没想到的是,却一直没用成功,以前也用过,也是没成功,于是该用plsql工具来分批导出,但是这次不同,数据量太大,如果还用plsql工具的话,效率会太低,而且,不一定是在windows环境中导出数据呢。 经过一番查找,终于找到exp命令方式用query参数的方法,记录如下:query参数在windows和unix中使用的方式都不一样,因为操作系统不
突然停电重启数据库就出现ORA-00600错误的解决方法(转)
本人是在数据库迁移的时候出现00600 【2252】的错误解决办法一样!!解决办法相同!突然停电,启动数据库就出现ORA-00600错误如下:——————————————————————Connected to an idle instance.ORACLE instance started.Total System Global Area 581506668 bytesFixed Size 452204 bytesVariable Size 402653184 bytesDatabase Buffers 167772160 bytesRedo Buffers 10629120 bytesDatabase mounted.ORA-00600: internal error code, arguments: [2252], [1903], [579459841], [], [],[], [], []Subject: ORA-600 [2252
active sql
select'USERNAME'AND sid in (SELECT SID FROM V$SESSION WHERE STATUS = 'ACTIVE')select *from v$accesswhere owner = 'username'and sid in (SELECT SID FROM V$SESSION WHERE STATUS = 'ACTIVE')and type in ('TABLE','PACKAGE') *from dba_ddl_lockswhere owner =[@more@]
oracle 正在运行的对象查询
select * from dba_ddl_locks where owner = 'SYS' and SESSION_ID IN (SELECT SID FROM V$SESSION WHERE STATUS = 'ACTIVE')[@more@]对于其相应的依赖关系 这个还没有确定!