第一次安装RAC
最近几天忙于RAC安装,其间经历失败无数,究其原因是对VMWARE的使用不熟悉。将WORKSTATION换成SERVER版后,顺利完成安装。安装完成后还有个小问题没有解决,那就是重新启动虚拟机后,用命令crs_stat -t查看发现很多资源的状态是unknown,虽然依次手工启动LISTENER/ASM INSTANCES/DATABASE INSTANCES,RAC仍然可以使用,但是不知道会不会有其它问题。从网上找到一篇文章,出现的问题和我完全相同,作者说是时间不同步造成,经设置时间同步后,问题得到解决。然而我设置时间同步后问题仍然没有解决,也不知道是不是我时间同步设置得有问题。
OCR和VOTING DISK的MIRROR DISK的添加和删除
oracle10gR2开始支持OCR和vd的冗余,下面是进行MIRROR DISK添加和删除的方法[@more@]一、ocr的添加。 这里只举例使用raw device的情况(1)停止crs#crsctl stop crs# rsh lxvcs-8 /OraHome/crs/bin/crsctl stop crs(2)创建mirror ocr设备,vxassist -g ocrdg make ocrvol1 200M(3)使用ocrconfig倒出ocr数据# ocrconfig -export /oradata/ocr.data(4)修改文件,添加第二行#cat /etc/oracle/ocr.loc ocrconfig_loc=/dev/vx/rdsk/ocrdg/ocrvolocrmirrorconfig_loc=/dev/vx/rdsk/ocrdg/ocrvol1local_only=FALSE(5)使用ocrconfig向设备中导入数据
LINUX中fdisk -l 输出结果的解读
linux 中fdisk -l 输出结果怎么解读,最近在网上看到一篇文章,觉得写得比较清楚,特此转载以便参考:[@more@]关于fdisk -l 一些数值的说明;Disk /dev/hda: 80.0 GB, 80026361856 bytes255 heads, 63 sectors/track, 9729 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes 这个硬盘是80G的,有255个磁面;63个扇区;9729个磁柱;每个 cylinder(磁柱)的容量是 8225280 bytes=8225.280 K(约为)=8.225280M(约为);分区序列 引导 开始 终止 容量 分区类型ID 分区类型Device Boot Start End Blocks Id System/dev/hda1 *
WARNING: inbound connection timed out (ORA-3136)
某Oracle10gR2数据库警告日志文件中出现大量警告:WARNING: inbound connection timed out (ORA-3136)网上找了一下ORA-3136的资料,特此记录如下:[@more@]解决方案:1.set INBOUND_CONNECT_TIMEOUT =0 in listener.ora2. set SQLNET.INBOUND_CONNECT_TIMEOUT = 0 in sqlnet.ora of server.3. stop and start both listener and database.4. Now try to connect to DB and observe the behaviour关于INBOUND_CONNECT_TIMEOUT:SQLNET.INBOUND_CONNECT_TIMEOUTPurposeUse the SQLNET.INBOUND_CONNECT_TIMEOUT parameter to specify the time
又遇10G BUG
今天接一用户电话,说数据库突然DOWN了,叫我看看......[@more@]经查警告日志中有下面的错误信息:Mon Jul 16 17:59:46 2007Errors in file /adosprod/dump/bdump/adosprod_mman_381670.trc:ORA-00600: internal error code, arguments: [kmgs_pre_process_request_6], [6], [453], [64], [3], [0x700000208C55290], [], []Mon Jul 16 17:59:47 2007Errors in file /adosprod/dump/bdump/adosprod_mman_381670.trc:ORA-00600: internal error code, arguments: [kmgs_pre_process_request_6], [6], [453], [64], [3], [0x700000208C55290]
执行SQL语句遇到3113错误
最近在一家客户那里做数据库健康检查,听用户说有条SQL语句执行时总是报3113错误,经METALINK诊断,确认是BUG 2475995[@more@]语句为:select case a.pk_corp when '1014' then '010501'when '1100' then '292101'when '1002' then '011401' end as unit_code,b.code,a.stocks_num,a.stocks_sum fromhtnc.Nc_sim_secstockbalance a,htnc.nc_sim_securities b,(select pk_corp,pk_securities,max(trade_date) as trade_datefrom htnc.Nc_sim_secstockbalancewhere pk_corp in ('1014','1100','1002')and state=0group by pk_corp,pk_securi
最近遇到的RAC的一个实例无法连接的问题
最近接到一个客户的电话,说RAC的一个实例down了,关也关不掉,起也起不来。SQL> shutdown immediate ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist IBM AIX RISC System/6000 Error: 2: No such file or directorySQL> startup ORACLE instance started. Total System Global Area 2451540256 bytes Fixed Size 743712 bytes Variable Size 1375731712 bytes Database Buffers 1073741824 bytes Redo Buffers 1323008 bytes 然后不动了。[@more@]于是叫用户把alert.log文件发过来,发现遇到了OR
十年了!?
一直以来都没有时间概念,今天在饭馆吃饭,看到电视里面庆祝香港回归十周年的节目,不禁感慨万分。十年前,九七年的六月三十日,我还在学校。那年的七月一日我们这些即将走向社会的学子们在学校举行了最后一场升旗仪式后便各奔东西。呵呵,想来今天也是我参加工作以来十周年的日子。十年了,我都做了些什么?十年后,我又会怎样?[@more@]
Linux 系统中的Samba配置(转)
前言: 为了实现windows 和 Linux以及其他操作系统之间的资源共享,软件商推出nfs 和samba两种解决方式。由于市场上缺乏象pc-nfs那样的客户端工具,使得Linux和windows的资源共享变得复杂。Samba的出现解决了这一问题,它以其简洁、实用、灵活配置的特点受到越来越多人们的广泛关注。 Windows利用SMB协议来实现操作系统间文件和打印机共享,而Samba本身具备SMB协议,它实现局域网内和Windows系列计算机的资源共享。 本文就Samba在Linux系统下的配置为重点,讨论局域网内windows 与 Linux 的资源共享。[@more@]一、Samba 介绍 1、SMB协议
alter database datafile .... offline drop的问题
10G 之前:If the database is in NOARCHIVELOG mode, you must specify the DROP clause to take a datafile offline. However, the DROP clause does not remove the datafile from the database. To do that, you must drop the tablespace in which the datafile resides. Until you do so, the datafile remains in the data dictionary with the status RECOVER or OFFLINE. If the database is in ARCHIVELOG mode, Oracle ignores the DROP keyword. 10G 之后:ALTER TABLESPACE ... DROP DATAFILE ...;[@more@]
一次给用户配置RAC的LOAD BALANCE的经历。
配置RAC的LOAD BALANCE其实是一件很简单的工作,然而本来信心满满给用户配置,却引起用户数据库不能登陆的错误,事情经过到底是怎样的呢?[@more@]一、配置过程:1、先配置两个节点的tnsnames.ora文件,包含下面的内容:failover =(DESCRIPTION =(enable=broken)(LOAD_BALANCE = yes)(ADDRESS = (PROTOCOL = TCP)(HOST = jxgs550a)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = jxgs550b)(PORT = 1521))(CONNECT_DATA =(SERVICE_NAME = jxdc.jxgs.gov)(failover_mode=(type=select)(method=basic))))LISTENER_RACa =(DESCRIPTION =(A
一次数据库不能归档问题的处理
数据库不能归档,很多的时候是因为磁盘空间不够或者在线日志文件损坏导致。然而4月份的时候,我却遇到一个非常奇怪的归档不成功的问题:[@more@]1、用户数据库不能登陆,查看警告日志,发现下面的错误:ORA-19510: failed to set size of 102395 blocks for file "/oradata/gpsdb/archive/1_9410.dbf" (blocksize=1024)ORA-27037: unable to obtain file statusHP-UX Error: 2: No such file or directoryAdditional information: 5ORA-16038: log 1 sequence# 9409 cannot be archivedORA-19510: failed to set size of blocks
ORACLE RELINK
一个同事问我做过relink吗?我说没有,不过倒是找到一篇文章,介绍得比较详细,特此记录:http://ist.uwaterloo.ca/~baumbach/ORACLEnotes/STARTUP_relinking_oracle.html[@more@]
一次用RMAN做数据库恢复遇到的问题
4月份的时候,一个客户的数据库出现严重的性能问题,到现场后,决定将备份恢复到测试机上并让测试机作为生产库给外界提供服务,然后再比较测试库和生产库上SQL的执行计划,从而找出生产库的问题。事实证明,这个思路是非常正确的。然而当时做RMAN恢复的时候遇到过几个问题,这里记录一下:[@more@]1、遇到的第一个问题是要在操作系统上设置环境变量NLS_LANG和NLS_DATE_FORMAT。我先按照OCP教材上的方式设置了NLS_LANG=AMERICAN,结果登陆RMAN时总是提示错误:设置了错误的值。后来在同事的帮助下顺利解决了相关问题,方法就是设置NLS_LANG
收集到几个别人BLOG的文章
1、利用statspack来获取生成环境中top SQL及其执行计划http://www.hellodba.com/Doc/statspack_report_sql.htm2、'/dev/async' not presenthttp://www.loveunix.cn/html/32/1132-15246.html3、SQLPLUS中@符号不能正常使用http://www.loveunix.cn/html/32/1132-15188.html4、不规范的安装设置引起drop user ora-3113故障http://www.loveunix.cn/html/32/1132-15185.html5、系统慢到Oracle用户连接不上怎么办?http://www.loveunix.cn/html/32/1132-14557.html6、系统维护:用“internal"用户连接hung的数据库http://www.loveunix.cn/i
充满人生哲理的五句话
做人最大的乐趣在于通过奋斗去获得我们想要的东西,所以有缺点意味着我们可以进一步完美,有匮乏之处意味着我们可以进一步努力。当一个人什么都不缺的时候,他的生存空间就被剥夺掉了。如果我们每天早上醒过来,感到自己今天缺点儿什么,感到自己还需要更加完美,感到自己还有追求,那是一件多么值得高兴的事情啊![@more@]下面的五句话,充满了人生哲理,能让我们进一步努力、进一步完美。第一句:优秀是一种习惯这句话是古希腊哲学家亚里士多德说的。如果说优秀是一种习惯,那么懒惰也是一种习惯。人出生的时候,除了脾气会因为天性而有
Can one execute an operating system command from PL/SQL?
http://www.orafaq.com/faq/can_one_execute_an_operating_system_command_from_pl_sql[@more@]
linux下gssftp允许root登陆的设置(转)
编辑文件/etc/xinetd.d/gssftp# description: The kerberized FTP server accepts FTP connections # that can be authenticated with Kerberos 5.service ftp{flags = REUSEsocket_type = streamwait = nouser = rootserver = /usr/kerberos/sbin/ftpd# server_args = -l -aserver_args = -llog_on_failure += USERID# disable = yesdisable = no}将红色的部分注释后,改成紧跟的一行重新启动xinetd[@more@]
关于原来对parse的一些误解
以前总认为只要执行SQL,必然会PARSE,事实上这是不对的。 实际上我们可以大量减少SOFT PARSE。 [@more@]1、如果我们设置参数session_cached_cursors,ORACLE会高速缓存游标,这样对每个会话的某个游标只打开一次并执行很多次,也就是PARSE一次执行很多次。2、在PL/SQL中,会自动高速缓存语句。当你关闭游标时,ORACLE并不马上关闭,而是保持游标打开,希望被再次使用。如果打开的游标数超出了参数文件中的open_cursors值,ORACLE才会抛弃一条高速缓存的游标。PL/SQL只能对静态SQL做到这点。3、在PL/SQL中:a.只要有可能,就应该使用游标(隐
什么是延迟块清除?
Oracle在事务相关的提交列表中,记录下已修改的块列表,每个列表记录20个块,根据需要可能分配有多个这种列表.这种块列表有一个上限,就是缓冲区缓存大小的10%.如果一次修改的块,没有超过了缓冲区缓存大小的10%,并且这些块在内存中,则commit时,会清除块上的事务信息,否则,就不会理会它,直到下次访问这些块时,再清除块中的事务信息,这就是延迟块清除.因为这个Select修改了块的事务信息,所以就会产生Redo.[@more@]---------------------------------------------------------------当Oracle更新数据块时,会在回滚段(UNDO Segment)记录下这一更新