
技术博文
文章平均质量分 65
PrudentWoo
态度决定一切,成就是因为不断的超越。
展开
-
cursor:pin S wait on X故障诊分析
SGA组件中KGH: NO ACCESS持续变大 ,KGLH0、SQLA持续变小,KGH: NO ACCESS表示缓冲区缓存和共享池之间的部分传输,正是由于内存组件的调整,latch: shared pool被争用,造成了大量的cursor: pin S wait on X等待。当一个sql的版本过多,也就是子游标过多,当sql软解析去扫描父游标下面的子游标,链路太长也会导致大量的cursor: pin S wait on X等待。DDL语句会导致相关对象的所有游标都失效,当再次解析时会造成卡顿。原创 2022-12-26 22:24:23 · 4658 阅读 · 1 评论 -
数据库索引分裂 问题分析
某客户反馈在 18 点 30 分左右出现性能问题,活动会话飙升,业务卡顿。 通过awr 可以看到大量的索引分裂等待,和并发的事务槽等待,事务槽的并发等待是由于索引分裂阻塞大量会话导致的并发加剧的问题,所以我们主要看索引分裂的问题。 通过ASH 信息进行分析,活动会话飙升时刻在18 点32 分,当时阻塞者一直是节点2 的8442 会话,随后被阻塞会话不断飙升,被阻塞会话都是在等待TX – index contention 索引分裂。 根据ASH 继续分析84原创 2022-12-07 12:30:13 · 1648 阅读 · 0 评论 -
配置数据库监听白名单
一、背景: 2020年伊始,我们的工作中多了一个词"护网行动",之前闻所未闻;这是一个从国家层面提出的安全概念,目的是为了保障信息安全。各个组织机构会定期组织安防演练。咱们数据库层面为了应对这次安防演练也提出了自己的思想,数据库白名单策略限制非法设备对数据库进行访问。这是这次配置监听白名单的整个背景。二、技术策略:编辑sqlnet.ora文件 #开启ip限制功能 tcp.validnode_checking=yes #允许访问数据库的IP地址列表,多...原创 2020-07-28 22:51:39 · 844 阅读 · 1 评论 -
位(bit)、字节(Byte)、KB、MB、GB ... 之间的关系
位(比特位):bit(binary digit)(简写:b),是计算机数据存储最小的单位,二进制中,0或者1就是一个位(比特位)bit。字节:Byte(简写:B),是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位,也就是 →1Byte = 8bit = 1B = 8b字符:Character,在计算机和电信技术中,一个字符是一个单位的字形、类字形单位或符号的基本信息。字符与字节:ASCII码:一个英文字母(不区分大小写)占一个字节的空间。如一个ASCII码就是一个字.原创 2020-07-03 07:10:41 · 5088 阅读 · 0 评论 -
19c 探索高可用系列(二) - RAC+DataGuard Broker
19c 探索高可用系列(二) - RAC+DataGuard Broker前言:在备库需要清理昨天的环境:SQL> alter system set log_archive_dest_2='';System altered.一、主备库启用Broker特性主:SQL> alter system set dg_broker_...原创 2020-03-21 17:24:53 · 715 阅读 · 0 评论 -
19c OneNode Convert to RAC
一、查看状态[oracle@ora19crac1 ~]$ srvctl config database -d wooDatabase unique name: wooDatabase name: wooOracle home: /u01/app/oracle/product/19.3.0/dbhome_1Oracle user: oracleSpfile: +DATA_GP01/W...原创 2020-03-19 10:23:03 · 435 阅读 · 1 评论 -
19c TAF 配置及测试
19c TAF 配置及测试一、添加services_taf:[root@ora19crac1~]#su-oracleLastlogin:TueMar318:06:26CST2020onpts/1[oracle@ora19crac1~]$srvctladdservice-dwoo-sserver_taf-r"woo1,woo2...原创 2020-03-19 09:32:04 · 805 阅读 · 0 评论 -
SQLPlus无法登录数据库提示密码不对或权限不足
SQLPlus无法登录数据库提示密码不对或权限不足问题现象: sqlpus / as sysdba,提示权限不足,sqlplus system/oracle@orcl无法登录数据库,实际密码是正常的,但提示提示密码不对。问题分析:权限问题,涉及到到操作系统用户是否对数据库有权限。 密码是否正确,是否启用操作系统验证。解决办法:操作系统administ...原创 2020-03-18 12:57:07 · 1928 阅读 · 0 评论 -
oracle 统计信息查看与收集
一、查看表统计信息altersessionsetNLS_DATE_FORMAT='YYYY-MM-DDHH24:MI:SS';selectt.TABLE_NAME,t.NUM_ROWS,t.BLOCKS,t.LAST_ANALYZEDfromuser_tablestwheretable_namein('T1','T2');备注:通过脚本查看统计信息,参考MO...原创 2020-03-18 09:25:48 · 1886 阅读 · 0 评论 -
实用解析dmp文件内容
配置实验环境: 1.1 生产三个文件 exp woo/oracle table=dump_table file=1.dmp;expdp woo/oracle tables=dump_table directory=dhome dumpfile=2.dmp;touch 3.dmp2.创建随机数据SQL> create table dump_tabl...原创 2020-03-18 08:09:09 · 4657 阅读 · 0 评论 -
刚装完的数据库报错 ORA-01102 ORA-1102 signalled during....
昨天刚装完的一个数据库在启动的时候,报错ORA-01102,而且安装的时候也没有看到哪里有报错信息,一路都比较顺利,bW Z$bob s ^ C20674423而且这也是第一次我碰到这个问题,当时我首先就检查了alert日志文件,并把相关的错误信息在metalink上查看过了,r D8cj,L20674423经过分析后判断是由于进程间通信被争用导致,以下是我处理该问题的一个思路原创 2011-11-19 05:27:20 · 3377 阅读 · 0 评论 -
Oracle在不同平台间表空间迁移
平台环境: 1、源库: Windows Service 2003 SP2 x86 Oracle Service 10.2.0.4 x86 2、目标库 Redhat Linux 5.5 X64 Oracle Service 10.2.0.5 3、检查目标数据库的系统环境/G'x原创 2011-11-19 05:29:39 · 3076 阅读 · 0 评论 -
ORA-00988: 口令缺失或无效
今天应客户要求创建用户的密码必须跟源库一样,但是我发现源库的密码为123456,非常简单而且是以数字开头,这个oracle默认是不允许的,但是源库却已经实现了。后来经过多次尝试,终于解决,只需要密码用用引号引起来即可。 egg:SQL> create user wwl02 identified by 123456;create user wwl02 identified by 12原创 2011-11-19 05:31:19 · 4895 阅读 · 0 评论 -
在在Oracle VirtralBox 安装 Oracle 10g For Oracle Linux 5
正式Oracle Linux5.3上安装数据库1、检查操作系统版本[root@ora10g ~]# uname -aLinux ora10g.localdomain 2.6.18-164.el5 #1 SMP Thu Sep 3 02:16:47 EDT 2009 i686 i686 i386 GNU/Linux[root@ora10g ~]# lsb_release-aLSB原创 2011-11-19 05:28:36 · 1838 阅读 · 0 评论 -
ora-27100:shared memory realm already exists错误的解决
数据库ora-27100:shared memory realm already exists错误的解决环境:操作系统平台 Windows Service 2003 R2 x86数据库版本 Oracle Enterprise 9.2.0.1 for windows x86 今天一客户数据库启不来了,报ora-27100:shared memor原创 2011-11-26 10:41:28 · 2574 阅读 · 0 评论 -
刚装完的数据库报错 ORA-01102 ORA-1102 signalled during....
昨天刚装完的一个数据库在启动的时候,报错ORA-01102,而且安装的时候也没有看到哪里有报错信息,一路都比较顺利,而且这也是第一次我碰到这个问题,当时我首先就检查了alert日志文件,并把相关的错误信息在metalink上查看过了,经过分析后判断是由于进程间通信被争用导致,以下是我处理该问题的一个思路,并在最后附上了metalink原文以及朋友对该问题的一个理解和处理办法。原创 2011-11-28 10:16:21 · 2441 阅读 · 0 评论 -
怪问题
SYS用户连接进来查询testtb的表信息,没有看到。15:54:50 SQL> conn / as sysdbaConnected.15:55:10 SQL> select BLOCKS,EMPTY_BLOCKS,NUM_ROWS,AVG_ROW_LEN from dba_tables where table_name='TESTTB'; BLOCKS EMPTY_BLOC原创 2011-11-28 10:52:08 · 941 阅读 · 0 评论 -
配置vnc远程连接Linux和Unix远程服务器图形界面安装oracle
1、配置并开启vnc服务[oracle@localhost ~]$ vncserverYou will require a password to access your desktops.Password: ---这里要求输入vnc客户端登录的密码并重复Verify: New 'localhost.localdomain:原创 2011-11-28 10:10:54 · 1411 阅读 · 0 评论 -
ora-00600 [12700]的故障一般是由于table或index的数据块有错误
ora-00600 [12700]的故障一般是由于table或index的数据块有错误故障现象:用户反映,在执行以下一条简单的select命令时报错select * from in_passenger t where t.hotelcode = 'xxxxx'其中xxxxx是索引列,不使用索引列则不报错。处理过程:1. 查看跟踪文件中发生错误的SQL2. 对引发错误原创 2011-11-28 10:12:57 · 1469 阅读 · 0 评论 -
由于p3006854_9204_linux.zip在Linux 5.5安装导致的错误解决办法
我登录该系统的时候发生如下错误,包扩执行任何命令都会报错:Last login: Thu Nov 10 08:32:12 2011 from 134.224.55.126ERROR: ld.so: object '/etc/libcwait.so' from /etc/ld.so.preload cannot be preloaded: ignored.ERROR: ld.so:原创 2011-11-28 10:28:25 · 3175 阅读 · 0 评论 -
配置vnc远程连接Linux和unix服务器图形界面安装Oracle
1、配置并开启vnc服务[oracle@localhost ~]$ vncserverYou will require a password to access your desktops.Password: ---这里要求输入vnc客户端登录的密码并重复Verify: New 'localhost.localdomain:原创 2011-11-28 10:49:19 · 2786 阅读 · 0 评论 -
Redhat Linux 添加硬盘
Redhat Linux 添加硬盘原有的分区信息Last login: Wed Nov 30 10:01:30 2011 from 192.168.5.1[root@ora10g ~]# [root@ora10g ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda7原创 2011-11-30 10:32:05 · 1298 阅读 · 0 评论 -
一、更改ORACLE SID名称
一、更改ORACLE SID名称1、切换到ORACLE用户,登陆到ORACLE数据库:[root@ora10g ~]# su - oracle[oracle@ora10g ~]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Tue Dec 6 23:52:04 2011Copyright (c)原创 2011-12-21 23:47:08 · 3652 阅读 · 0 评论 -
DBNEWID 使用一:更改DBID
DBNEWID 工具的使用: DBNEWID 工具是用于更改数据库SID和数据库DBNAME;DBID是ORACLE用来标识这个数据库的唯一内部ID号,DBNAME用于标识数据库的唯一名称;通常情况下用户用户是不容易修改ORACLE的DBID和DBNAME的,但是有特殊情况的时候需要修改,ORACLE为我们提供了DBNEWID这个工具来辅助我们去更改DBID和DBNAME。原创 2011-12-21 23:52:24 · 1324 阅读 · 0 评论 -
三、更改INSTANCE_NAME
三、更改INSTANCE_NAME1、检查当前的instance_name 是wwlSQL> select instance_name from v$instance;INSTANCE_NAME----------------wwl2、创建pfile参数文件SQL> create pfile from spfile;原创 2011-12-22 00:50:51 · 5103 阅读 · 0 评论 -
二、修改数据库的全局名称
二、修改数据库的全局名称1、查看当前数据库的全局名称如下:SQL> select * from global_name;GLOBAL_NAME--------------------------------------------------------------------------------WWL.REGRESS.RDBMS.DEV.US.ORACLE.COM2、原创 2011-12-21 23:50:55 · 1868 阅读 · 0 评论 -
DBNEWID工具使用二:修改DBNAME
二、使用DBNEWID修改DBNAME1、查看当前的DBNAMESQL> select name from v$database; NAME --------- WWL 2、创建参数文件SQL> create pfile from spfile; File created.原创 2011-12-21 23:58:11 · 1310 阅读 · 0 评论 -
ORA-28056: Writing audit records to Windows Event Log failed
C:\>sqlplus / as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on 星期四 1月 5 13:55:44 2012Copyright (c) 1982, 2010, Oracle. All rights reserved.ERROR:ORA-28056: Writing audit records to Windows原创 2012-01-05 14:28:26 · 3280 阅读 · 0 评论 -
在Windows平台下修改Oracle实例不随服务启动
一、在Windows平台下修改Oracle实例不随服务启动:1、修改注册表如下键值实现:HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\KEY_OraDb10g_home12、在右边找到找到 ORA_WWL_AUTOSTART项,默认这个值为TRUE,随服务启动而启动,我们将其改为FALSE,再起服务的时候将不再会启动数据库测试:启动Oracle服原创 2012-01-05 14:26:23 · 2627 阅读 · 0 评论 -
远程通过监听连接报ORA-01034故障处理一例
错误如下:SQL> conn system/test@testERROR:ORA-01034: ORACLE not availableORA-27101: shared memory realm does not existLinux Error: 2: No such file or directory1、检查了环境环境变量,查看了监听状态和实例状态都是正常的。2、原创 2012-02-10 22:55:22 · 2972 阅读 · 1 评论 -
Oracle Flashback 技术大解密
Oracle Flashback 技术大解密 作者:吴伟龙 Flashback 技术是以Undo segment中的内容为基础的,因此受限于UNDO_RETENTON参数。要使原创 2012-04-01 17:28:46 · 2326 阅读 · 0 评论 -
ORA-27102:out of memeory 故障处理一例
SQL> startupORA-27102: out of memoryLinux-x86_64 Error: 28: No space left on device检查1、操作系统内存大小2、查看限制/etc/sysctl.conf 中的如下值,可见是由于kernel.shmall值设置太小导致。注意:对于32位系统,一页=4k,也就是4096字节kernel.s原创 2012-02-08 17:12:17 · 1648 阅读 · 0 评论 -
Linux 下 Oracle随系统自动启动和关闭
Linux 下实现Oracle随系统自动启动和关闭实现如下目的: a、实现开启oracle实例自启动 b、关闭操作系统或重启操作系统前能够正常关闭Oracle数据库a、实现系统启动oracle实例自启动步骤:1、修改Oracle系统配置文件/etc/oratab内容,将最后一行中最后一个字符的N改为Yroot用户登录修改#vi /etc/oratab原创 2012-04-05 16:32:04 · 3265 阅读 · 0 评论 -
10g新特性之-跨平台表空间传输
1.准备工作: 查询源数据库平台信息 SQL> col platform_name for a40SQL> SELECT d.PLATFORM_NAME, ENDIAN_FORMAT 2 FROM V$TRANSPORTABLE_PLATFORM tp, V$DATABASE d 3 WHERE tp.PLATFORM_NAME = d.PLATFORM_NAME;PLAT原创 2012-04-05 17:01:25 · 1304 阅读 · 0 评论 -
Oracle 表空间利用率及对象大小查询
1. 查看所有表空间大小SQL> select tablespace_name,sum(bytes)/1024/1024 M from dba_data_files group by tablespace_name;2. 已经使用的表空间大小SQL> select tablespace_name,sum(bytes)/1024/1024 M from dba_free_space gr原创 2012-04-05 19:16:12 · 1828 阅读 · 0 评论 -
DBCA响应文件建库报模版不存在解决办法
1、执行建库命令[oracle@wwl database]$ dbca -silent -responseFile /home/oracle/database/dbca.rsp2、报模版不存在,错误信息如下:Template General Purpose does not exist. Please specify an existing template for database原创 2012-04-07 00:08:46 · 5830 阅读 · 0 评论 -
探索ORACLE之ASM01_概念
探索ORACLE之ASM01_概念作者:吴伟龙一、 ASM(自动存储管理)的来由:ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单实例,同时对RAC的支持也是非常好。ASM可以自动管理磁盘组并提供有效的数据冗余功能。使用ASM(自动存储管理)后,数据原创 2012-04-06 19:57:45 · 2071 阅读 · 0 评论 -
在32位及64位 Win7 vista及win2008上安装oracle10g问题处理
在32位及64位Win7 vista及win2008上安装oracle10g安装问题处理很多人在win7 vista win2008上安装oracle 10g的时候都会报如下版本不支持错误,实际上原因是因为oracle 10g出来的比如上系统要早,但是我们还是有办法处理的。详细过程参考下面步骤:解决问题有三个办法方法一:1、 修改安装配置文件安装介质解压后,进入如下路径原创 2011-11-26 10:39:33 · 7309 阅读 · 0 评论 -
AIX中使用DBCA创建数据库ora-12547错误解决一例
AIX中使用DBCA创建数据库ora-12547错误解决一例 Could not load program oracledevmdm: Symbol resolution failed for /usr/lib/libc.a[aio_64.o] because: Symbol kaio_rdwr64 (number 1) is not exported from原创 2012-04-10 19:49:42 · 3159 阅读 · 0 评论 -
ORA-12547经典错误处理
ORA-12547错误处理 今天上午10:30左右,领导告知我,让我帮一同事将ORACLE安装下,他在安装的过程中出现了问题,报错,无法继续安装。 一、由于NLS_LANG设置错误,导致ora-12547错误 我过去看了看,发现在AIX5.3系统中使用DBCA建库到最后一步点完成后立即就出现了ORA-12547 tns lost connect 这个原创 2012-04-10 19:31:33 · 15760 阅读 · 0 评论