
ORACLE管理
文章平均质量分 67
zhoul77777
这个作者很懒,什么都没留下…
展开
-
什么叫连接池
[b]连接池的好处[/b] 连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。 这种把连接“汇集”起来的技术基于这样的一个事实:对于大多数应用程序,当它们正在处理通常需要数毫秒完成的事务时,仅需要能够访问JDBC 连接的 1 个线程。当不处理事务时,这个连接就会闲置。相反,连接池允许闲置的连接被其它需要的线程使用。 事实上,当一个线程需要用 J...原创 2009-09-12 11:27:01 · 132 阅读 · 0 评论 -
Oracle 错误之EXP-00056
错误如下:[oracle@mcprod admin]$ exp system/oracle file=/tmp/zhou.dmp owner=zhouExport: Release 9.2.0.4.0 - Production on Sat Oct 10 07:18:10 2009Copyright (c) 1982, 2002, Oracle Corporation. Al...2009-10-10 09:01:54 · 156 阅读 · 0 评论 -
Will compressing my indexes improve performance ?
Oracle introduced a compression option for indexes in Oracle 8.1. You can create an index as compressed, or rebuild it to compress it (although there are some restrictions about online rebuilds, rebui...原创 2009-10-26 11:06:38 · 114 阅读 · 0 评论 -
Oracle启动错误处理一则
客户反映业务有问题,远程连接数据库一看,又发现一个老古董数据库,呵呵。闲话不说,看看解决过程。主机版本为[quote]# oslevel4.3.3.0[/quote]数据库版本为[quote]SVRMGR> select * from v$version;BANNER ...2010-03-09 13:21:05 · 291 阅读 · 0 评论 -
一次误操作引起的Oracle数据库大恢复
事情起由是在Oracle 10g手动建库脚本中看到dbms_backup_restore.zerodbid(0)过程,其中作用是修改数据库的dbid。于是想通过该存储直接在sqlplus中执行修改dbid。修改之前记录其dbid[quote]SQL> select dbid from v$database; DBID----------1488207495[/...2010-03-10 13:48:45 · 256 阅读 · 0 评论 -
Oracle Enterprise Manager启动错误
操作系统版本为[quote]root@hisdb01:/#oslevel -r5300-09[/quote]数据库版本为[quote]SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle Datab...2010-03-16 20:40:31 · 481 阅读 · 0 评论 -
EXP-00008错误
执行逻辑导出时报错:. . exporting table DEF$_AQERROREXP-00008: ORACLE error 6510 encounteredORA-06510: PL/SQL: unhandled user-defined exceptionORA-06512: at "SYS.DBMS_EXPORT_EXTENSION", line 50ORA-065...2009-12-04 09:03:01 · 618 阅读 · 0 评论 -
Oracle 10g for AIX 5309 rootpre.sh执行错误
Oracle 10g for AIX 5309 rootpre执行时报以下错误:# ./rootpre.shRequired file ./pw-syscall32 is missing.解决办法:1、下载补丁号2896876,上传至服务端重新执行即可2、以下方法没有尝试(仅作参考)Copy the "rootpre" sub-directory to a tempor...2009-12-10 15:44:11 · 259 阅读 · 0 评论 -
Oracle enq: DX - contention之解决过程
一、解决过程2010年3月15日上午9点半左右,数据库出现大规模的分布式事务等待。EVENT----------------------------------------------------------------enq: DX - contentionenq: DX - contentionenq: DX - contentionenq: DX – conten...2010-03-19 14:51:41 · 415 阅读 · 0 评论 -
记一次Oracle服务器重启故障恢复
昨天晚上9点多,《黑夜传说》看到一半。售前打电话过来说一客户数据库服务器重启之后,数据库启动不了。没办法,只能关掉电影,和客户联系。通过QQ远程查看了解了服务器的大致架构。windows 2003平台,双节点rac,数据库版本为9.2.0.6。客户已经尝试过open数据库,据客户反映open数据库时报找不到归档日志之类错误。2节点数据库alert日志显示客户已经用“recover database...2010-03-20 11:14:42 · 215 阅读 · 0 评论 -
Oracle begin backup研究
由于昨天客户数据库数据文件头scn远远低于当前scn,我猜测是表空间做了begin backup。为了验证这一想法,特做了如下实验:数据库版本为:[quote]SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle Da...2010-03-20 14:43:54 · 288 阅读 · 0 评论 -
简单介绍ORACLE自动统计CBO统计信息
Oracle 10g隆重推出了自动统计CBO统计功能,但实际使用起来却是鸡肋,bug一大堆。现简单介绍一下。1、查看GATHER_STATS_JOB执行情况select JOB_NAME,LAST_START_DATE,ENABLED,state from dba_scheduler_jobs;[quote]JOB_NAME LAST_STA...2010-03-21 17:20:44 · 189 阅读 · 0 评论 -
Oracle bug之new child listener process forked
客户打电话告之数据库再次出现挂起现象,于是部署oswatcher在其主机上运行,oswatcher确实是好工具,强烈推荐。操作系统平台为[quote]$ uname -aHP-UX hpuxa B.11.23 U ia64 4101409079 unlimited-user license[/quote]数据库版本为[quote]SQL> select * from v$v...2010-03-22 20:52:46 · 140 阅读 · 0 评论 -
取得数据库全表扫描的语句(get_fullscan_table)
一:创建plan_table,数据库在默认情况下是没有创建此表的。SQL> @?/rdbms/admin/utlxplanTable created.SQL> create public synonym plan_table for plan_table;Synonym created.SQL> grant all on plan_table to pu...2009-06-15 20:51:48 · 157 阅读 · 0 评论 -
取得统计表空间使用率(get_tablespace_usage)
默认情况下,当增加表空间或者数据文件时,数据文件的自动扩展属性是关闭的。这给业务的连续性带来了一定的隐患。DBA有必要定期的查看表空间使用情况(只查看自动扩展关闭的表空间),脚本如下:SELECT SUBSTR(max(A.TABLESPACE_NAME),1,16) "Tablespace",TO_CHAR((MAX(A.BYTES)-nvl(sum(B.BYTES),0))*100...2009-06-15 20:52:45 · 96 阅读 · 0 评论 -
利用rowid更新,删除批量数据
一:大批量删除数据的脚本说明:有两张表a表(2000w数据),b表(30w数据)b.id肯定能在a.id中找到删掉a表中b.id和a.id不能匹配的数据如b.id有1,2,3,4a.id有1,2,3,4,5,6,7,8把5,6,7,8在a表中删掉create or replace procedure DelBatchData(LimitRows number...2009-06-15 20:54:01 · 320 阅读 · 0 评论 -
查看排序sql
很多情况下,DBA需要查看SQL排序的执行情况一:查出当前正在排序的SQL使用情况SQL> select a.tablespace, b.sid, b.serial#, a.blocks 2 ,c.sql_text 3 from v$sort_usage a 4 ,v$session b 5 ,v$sqltext c 6 where a.sessio...2009-06-16 13:45:10 · 100 阅读 · 0 评论 -
activestanby bug
仅以记录之SQL> RECOVER standby database;ORA-00283: recovery session canceled due to errorsORA-00600: internal error code, arguments: [krdsmr_2], [], [], [], [], [], [],[]重建控制文件解决,再次应用redolog解决...2009-06-16 17:47:29 · 130 阅读 · 0 评论 -
rman copy datafile to raw
[b]ORACLE VERSION[/b]:10203SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Pr...2009-06-16 19:08:04 · 161 阅读 · 0 评论 -
跨平台传输表空间
1.查看ORACLE支持的可跨版本SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - ProdPL/SQL R...2009-06-17 10:29:58 · 114 阅读 · 0 评论 -
ORA-07446 sdnfy: bad value ...
1.创建standby控制文件SQL> alter database create standby controlfile as '/tmp/c.ctl';alter database create standby controlfile as '/tmp/c.ctl'*ERROR at line 1:ORA-07446: sdnfy: bad value '/oracle/a...2009-06-18 10:17:46 · 534 阅读 · 0 评论 -
[kghalp+0500]
ORACLE 1024 for aix 5300-07客户生产库alert日志一直报以下错误:Thu Jun 18 13:30:46 2009Errors in file /oracle/admin/zjgs/bdump/zjgs_j001_6922446.trc:ORA-07445: 出现异常错误: 核心转储 [kghalp+0500] [SIGSEGV] [Invalid ...2009-06-18 13:53:54 · 120 阅读 · 0 评论 -
主库闪回,备份alert日志显示
仅记录:Incomplete Recovery applied until change 9744654282788Flashback Media Recovery CompleteCompleted: flashback database to scn 9744654282785Thu Jun 18 19:13:16 2009Redo Shipping Client Conn...2009-06-18 19:22:50 · 163 阅读 · 0 评论 -
ORACLE FAILOVER 研究
本实验纯模拟主库宕机情况下,激活备库的情况(强行激活)[root@dbsvr tmp]# uname -aLinux dbsvr 2.6.9-42.EL #1 Wed Jul 12 23:15:20 EDT 2006 x86_64 x86_64 x86_64 GNU/LinuxSQL> select * from v$version;BANNER--------------...2009-06-20 21:48:53 · 164 阅读 · 0 评论 -
ORACLE 9I 删除列以后怎么恢复数据
论坛上有位朋友提到:“删除列以后怎么恢复数据ora9i 数据库里面有个朋友误操作,执行了alter table xxx drop column xxx_col被删除的列是有值的,现在怎么才能找回来被删掉的列的值。俺试了logmgr,可惜只能找到alter table的信息,请大家看看有什么办法。”===========================...2009-06-21 21:31:39 · 229 阅读 · 0 评论 -
优化器相关参数
仅记录,抽空逐个解释db_file_multiblock_read_countOPTIMIZER_MODEOPTIMIZER_INDEX_COST_ADJ OPTIMIZER_INDEX_CACHINGOPTIMIZER_MAX_PERMUTATIONS Cursor_sharingOpen_cursorSession_cached_cursorscursor_...2009-06-22 15:55:18 · 90 阅读 · 0 评论 -
Oracle hang 之sqlplus -prelim使用方法
很多情况下,Oracle hang导致sqlplus无法连接,从而无法获得Oracle系统和进程状态,使得定位问题缺少强有力的依据。所幸的是Oracle 10g推出了sqlplus -prelim选项,在Oracle挂起时依然能使用sqlplus,从而能获得数据库状态。使用方法如下[quote]$ sqlplus -prelim "/as sysdba"SQL*Plus: Rele...2010-03-27 16:48:57 · 102 阅读 · 0 评论 -
记一次存储扩容数据库启动恢复
客户电话告之,数据库存储要扩容,扩容之后需要将部分数据文件迁移到新存储上,迁移之前顺便把数据库巡检做了。先简单介绍一下客户数据库环境。AIX版本为5304,A、B数据库HA互备,由于B主机有部分存储多余,考虑到最近A数据库磁盘较为繁忙,使用经常达到100%,于是建议将B主机多余存储划分至A主机作为pdisk1,然后将pdisk1加入到A主机datavg中,在datavg上pdisk1上建立文件系统...2010-03-29 20:04:53 · 263 阅读 · 0 评论 -
Oracle 利用管道压缩逻辑备份
熟悉利用管道压缩逻辑备份的大致过程:1、创建命名管道[ora10g@mcprod tmp]$ mknod /tmp/exp.pipe p 2、调用gzip压缩程序对输进管道信息进行压缩,并在后台执行[ora10g@mcprod tmp]$ gzip drb.exp.gz &[1] 19643[ora10g@mcprod tmp]$ ps -ef|grep 19643...2009-12-11 08:52:46 · 165 阅读 · 0 评论 -
library path在各平台中的配置
前一段时间在给客户升级数据库中,由于共享库文件环境变量设置错误,导致升级数据字典失败。在linux或者是unix、类unix平台中,编译程序基本上都有共享库文件目录,一般在环境变量中配置,每个平台共享库文件目录环境变量设置不尽相同,很容易搞混,先总结如下:注意其lib32和lib差别!Bourne Shell, K Shell or Bash环境下:AIX:export...2009-12-11 14:54:19 · 183 阅读 · 0 评论 -
什么是PSP0进程
alert上日志显示:Sun Jun 14 15:01:06 2009Thread 1 advanced to log sequence 3 (LGWR switch) Current log# 3 seq# 3 mem# 0: /oradata/test/redo03.logSun Jun 14 15:51:27 2009Thread 1 advanced to log s...2009-06-23 14:03:31 · 800 阅读 · 0 评论 -
数据库连接错误ORA-28547
1.连接数据库时候报错[ora10g@dbsvr dbs]$ sqlplus "sys/oracle@test as sysdba"SQL*Plus: Release 10.2.0.4.0 - Production on Sun Jun 14 16:59:39 2009Copyright (c) 1982, 2007, Oracle. All Rights Reserved....2009-06-23 15:12:52 · 268 阅读 · 0 评论 -
培训Oracle性能优化
今天给客户培训Oracle性能优化方面知识,主要包括以下方面1.Oracle体系结构介绍2.Oracle参数介绍3.Oracle执行计划的查看和分析4.statspack的使用5.exp/imp和rman的使用...2009-06-24 20:22:12 · 94 阅读 · 0 评论 -
ORACLE 外部表研究
因工作需要初步研究了ORACLE的外部表,研究过程如下1。操作系统上有文件[ora10g@hzmc tmp]$ ls -rtl /tmp/testloit_100w.log-rw-r--r-- 1 root root 15000000 Jun 25 15:19 /tmp/testloit_100w.log2。打开文件,文件格式如下,第一列表示afn,第二列表示dba007c 1...2009-06-25 15:41:45 · 96 阅读 · 0 评论 -
STATISTIC "cache hit ratio" - Reference Note
转自metalink 33883.1需要提醒的是:[color=red][b]Database tuning never must be driven by hit ratios. They only provide additional information to understand how the instance is operating.[/b][/color] Def...原创 2009-06-25 16:02:12 · 168 阅读 · 0 评论 -
ORACLE switch logfile更新ckpt研究
v$datafile信息来自controlfile,v$datafile_header信息来自数据文件头,从理论上来讲v$datafile和v$datafile_header的checkpoint_change#字段更新是同步的。需要指出的是logfile switch,并没有进行全量的ckpt触发。(full checkpoint),v$datafile和v$datafile_header的ck...2009-06-26 10:37:08 · 225 阅读 · 0 评论 -
GATHER_STATS_JOB错误及定位
alter日志显示:[quote]Fri Jun 19 10:00:05 2009Errors in file /ora10g/app/admin/mctest/bdump/mctest_j001_12715.trc:ORA-00600: internal error code, arguments: [15470], [0x3DCD09EC], [], [], [], [], [],...2009-06-26 16:10:50 · 293 阅读 · 0 评论 -
ORACLE调整_ksmg_granule_size大小
先简单介绍一下_ksmg_granule_size的知识点:_ksmg_granule_size大小取决于sga大小, 是sga分配的单位。如果 sga_max_size 1024M _ksmg_granule_size = 16M默认情况下_ksmg_granule_size为4M。客户的数据库目前sga配置为64G,processes需要从6000提高到8000,因为根据O...2009-06-29 09:12:48 · 590 阅读 · 0 评论 -
show_space&runstats
收录2个tkyte写的监控脚本,以备后用1.show_space[quote]create or replace procedure show_space( p_segname in varchar2, p_owner in varchar2 default user, p_type in varchar2 default 'TABLE', p_partit...原创 2009-06-29 10:28:24 · 95 阅读 · 0 评论 -
Library Cache Object loaded into SGA
alert日志频繁报错[quote]Mon Jun 29 16:00:06 2009Memory Notification: Library Cache Object loaded into SGAHeap size 4365K exceeds notification threshold (2048K)KGL object name :SYS.ALERT_QUE [/quote]...2009-06-29 16:34:12 · 291 阅读 · 0 评论