解决Can not allocate log问题的方法
RAC环境ORACLE其中一个节点报告大量的cannot allocate new log提示,详细信息如下: ORACLE Instance xxdb2 - Can not allocate log, archival requiredTue Dec 1 16:04:35 2009Thread 2 cannot allocate new log, sequence 7466All online logs needed archivingCurrent log# 3 seq# 7465 mem# 0: +XXDBGROUP/xxdb/onlinelog/group_3.268.6409755Current log# 3 seq# 7465 mem# 1: +XXDBGROUP/xxdb/onlinelog/group_3.269.6409755检查上面的提示,其中有一行是"All online logs needed archiving". 说明所有的redo log都需要归
ORA-01245、ORA-01547错误的解决
数据库rman restore database 之后,执行recover database的时候,报告ORA-01245错误,详细的错误信息如下: SQL> recover database until cancel;ORA-00279: change 575876 generated at 12/01/2009 08:19:49 needed for thread 1ORA-00289: suggestion :/oracle/flash_recovery_area/ORCL/archivelog/2009_12_01/o1_mf_1_2_%u_.arcORA-00280: change 575876 for thread 1 is in sequence #2Specify log: {=suggested | filename | AUTO | CANCEL}autoORA-00308: cannot open archived log'/oracle/flash_recovery_area/ORCL/archivel
ORA-01547、ORA-01994错误解决一例
rman恢复后,在做recover database的时候,出现ORA-01547、ORA-01994错误,错误信息如下: SQL> recover database until cancel;ORA-00279: change 548207 generated at 11/28/2009 10:25:46 needed for thread 1ORA-00289: suggestion :/oracle/flash_recovery_area/ORCL/archivelog/2009_11_30/o1_mf_1_1_%u_.arcORA-00280: change 548207 for thread 1 is in sequence #1Specify log: {=suggested | filename | AUTO | CANCEL}cancelORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error belowORA-01194: fil
linux上“rman can't open target”问题解决
在一台Linux机器上,使用rman命令出错如下: $ rman target /rman: can't open target原来导致问题的原因是这个不是oracle的rman命令 $ which rman/usr/X11R6/bin/rman检查.bash_profile中的PATH环境变量:$ cat ~/.bash_profile|grep -i pathPATH=$PATH:$HOME/binexport PATHPATH=$PATH:$ORACLE_HOME/binexport ORACLE_BASE ORACLE_HOME ORACLE_SID PATH只要修改~/.bash_profile文件,将$ORACLE_HOME/bin放到$PATH前面就可以了,修改后的~/.bash_profile的PATH环境变量为: $ cat ~/.bash_profile|grep -i pathPATH=$PATH:$HOME/binexport
ORA-30012错误的解决过程
1、故障现象:data guard切换时,原来的standby节点无法启动,报ORA-30012错误,内容为:undo tablespace '%s' does not exist or of wrong type 2、问题定位:因为是standby节点无法启动,怀疑primary节点和standby节点的undo_tablespace名称不同:a)、在primary节点上检查undo参数:SQL> show parameter undoNAME TYPE VALUE------------------------------------ ----------- ------------------------------undo_management string AUTOundo_retention integer 900undo_tablespace string UNDTBS1b)、因为备用节点无法启动,且sp
metalink上oracle数据库推荐补丁列表的document id(Oracle Recommended Patches -- Oracle Database)
metalink上的各版本database推荐补丁的document id为:756671.1文章标题为:Oracle Recommended Patches -- Oracle Database [ID 756671.1][@more@]
使用oswatcher监控rac的心跳网络
oswatcher是oracle公司的一个收集unix、linux主机的操作系统和网络运行状况的工具,常用它来监控rac的心跳网络的稳定性。oswatcher的使用方法:1、首先从metalink上下载osw,document id是:301137.12、将下载的文件osw3b.zip上传到rac两个节点的一个目录中,如 /tmp/osw3、解压osw3b.zip文件,然后解压osw3b.tar文件4、修改参数文件,配置心跳网络的参数 在osw目录中创建名称为private.net 的文件,其内容包括如下两个部分: a、两条traceroute命令:参照 Exampleprivate.net 文件,根据自己的操作系统类型,选择对应的tracerout
分析表的crontab脚本
将分析表的语句写入一个sh脚本中,然后在crontab中执行这个sh脚本,脚本内容如下:year=`date +%Y`month=`date +%m`day=`date +%d`now=$year-$month-$day export ORACLE_SID=orclsqlplus '/as sysdba' <<EOF > /dev/nullset echo off; set heading off; set pagesize 0; set linesize 1000; set numwidth 12; set termout off; set trimspool on; spool ${now}.log;exec dbms_stats.GATHER_TABLE_STATS('scott','emp',cascade=>true,force=>true);spool off;exit;EOF[@more@]
rman增量备份及恢复的例子
SQL> ![oracle@oracle ~]$ cd /oracle[oracle@oracle oracle]$ lsadmin app flash_recovery_area oradata oraInventory[oracle@oracle oracle]$ mkdir chtrace.f[oracle@oracle oracle]$ pwd/oracle[oracle@oracle oracle]$ mv chtrace.f changetrace[oracle@oracle oracle]$ ls -ltotal 24drwxr-x--- 3 oracle oinstall 4096 Nov 7 13:37 admindrwxrwxr-x 3 oracle oinstall 4096 Nov 7 12:31 appdrwxr-xr-x 2 oracle oinstall 4096 Nov 26 08:27 changetracedrwxr-x--- 3 oracle oinstall 4096 Nov 7 13:39 flash_recovery_ar
为rman启用block change tracking,提高增量备份性能
--启用block change tracealter database enable block change tracking using file '/oracle/changetrace/rman_change_track.f';--查看当前的数据库是否启用了change traceselect bytes/1024/1024 m,status,filename from V$BLOCK_CHANGE_TRACKING;--禁用change tracealter database disable block change tracking;--重用已存在的change tracealter database enable block change tracking using file '/oracle/changetrace/rman_change_track.f' reuse;[@more@]
oracle 在 aix上large page特性
调整16m内存的步骤1、查看oracle用户是否有CAP_BYPASS_RAC_VMM和CAP_PROPAGATE#lsuser capabilities oracle2、如果不存在CAP_BYPASS_RAC_VMM和CAP_PROPAGATE,则修改oracle用户,授予CAP_BYPASS_RAC_VMM和CAP_PROPAGATE#chuser capabilities=CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle3、如果是rac数据库,需要为root用户分配CAP_BYPASS_RAC_VMM和CAP_PROPAGATE,否则,当使用srvctl命令启动实例的事后不能使用大内存#chuser capabilities=CAP_BYPASS_RAC_VMM,CAP_PROPAGATE root4、调整操作系统参数#vmo -p -o v_pinshm=1#vmo -p -o maxpi
"OPatch failed with error code 73"故障一例
在执行opatch lsinventory的时候出现如下错误:Inventory load failed... OPatch cannot load inventory for the given Oracle Home. Possible causes are: Oracle Home dir. path does not exist in Central Inventory Oracle Home is a symbolic link Oracle Home inventory is corrupted LsInventorySession failed: OracleHomeInventory gets null oracleHomeInfo OPatch failed with error code 73 导致这个错误的原因是oracle home错误,解决方法很简单:1、执行attachHome.sh脚本% cd $ORACLE_HOME/oui/bin % ./attachHom
sun fire v490 [ID 983929 daemon_error] Device PS1 Failure Detected -- PS1 shutdown 问题诊断
客户的一台SUN Fire 490 报告大量如下错误:Nov 17 07:36:51 XXXX-APP0 picld[139]: [ID 983929 daemon.error] Device PS1: Failure Detected -- PS1 shutdown!Nov 17 07:36:03 XXXX-APP0 last message repeated 14 timesNov 17 07:36:33 XXXX-APP0 picld[139]: [ID 983929 daemon.error] Device PS1: Failure Detected -- PS1 shutdown!Nov 17 07:42:46 XXXX-APP0 last message repeated 14 timesNov 17 07:43:16 XXXX-APP0 picld[139]: [ID 983929 daemon.error] Device PS1: Failure Detected -- PS1 shutdown!Nov 17 07:49:29 XXXX-AP
websphere5.0记录已发布的应用的xml文件
websphere5中,在如下文件中记录已发布的应用/usr/WebSphere/AppServer/config/cells/ibm/nodes/ibm/serverindex.xml文件内容举例如下:<?xml version="1.0" encoding="UTF-8"?><serverindex:ServerIndex xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:serverindex="http://www.ibm.com/websphere/appserver/schemas/5.0/serverindex.xmi" xmi:id="ServerIndex_1" hostName="ibm"> <serverEntries xmi:id="ServerEntry_1&quo
aix 9090 端口与websphere5管理端口冲突解决
安装完was5.1之后,启动服务出错,报告sockets已经被使用解决方法如下:1、查看9090端口是否已经被使用# netstat -an|grep 9090tcp4 0 0 *.9090 *.* LISTEN2、编辑 /etc/inetd.conf,找到 wsmserver 开头的一行,注释掉3、刷新inetd服务# refresh -s inetd0513-095 The request for subsystem refresh was completed successfully.[@more@]
hacmp环境下的rman备份
1、需求描述aix的hacmp实现oracle数据库的主备环境,数据库采用rman备份到硬盘上,为了保证oralce数据库切换到备机上之后,rman备份也能正常进行,写了如下脚本2、脚本列表crontab内容23 23 * * * su - oracle -c "/oracle/scripts/fullbackup.sh" >/dev/null 2>&1fullbackuprun { allocate channel t1 type disk; allocate channel t2 type disk; BACKUP INCREMENTAL LEVEL 0 FILESPERSET 10 FORMAT '/ora_bak/rman/orcl/full_orcl_%T_%s_%p' DATABASE; sql 'alter system archive
LogMeIn Free远程登录的时候出现“Terminal Server Display is Inactive”错误
LogMeIn Free and Pro2To solve this issue, reboot the Host computer by performing the following steps: Connect to the Host computer and click on PreferencesClick on Advanced SettingsIn the Reboot Options section, click on View Reboot OptionsSelect the type of reboot you would like to perform[@more@]
RMAN-06133 错误解决一例
一、问题:在做数据库的异地恢复的时候,恢复控制文件报RMAN-06024错RMAN> run{2> allocate channel t1 type 'sbt_tape' parms 'ENV=(TDPO_OPTFILE=/usr/tivoli/tsm/client/oracle/bin64/tdpo.opt)'; 3> sql 'alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"';4> sql 'alter session set NLS_LANGUAGE=American';5> set until time='2009-07-09 21:50:00';6> restore controlfile;7> release channel t1;8> }allocated channel: t1channel t1: sid=1117 devtype=SBT_TAPEchannel t1: Data
rman时间点恢复(until time)完整例子
一、步骤:1、一次全备2、记录时间,增加表空间,查询新增加的数据文件3、再次全备4、执行时间点恢复,恢复到2记录的时间之前5、查询数据文件,发现2增加的数据文件不存在,时间点恢复成功。二、操作日志:oracle@oracle[/home/oracle]> export ORACLE_SID=orcloracle@oracle[/home/oracle]> rman target / catalog rman/rman@catalogRecovery Manager: Release 10.2.0.1.0 - Production on Mon Jun 15 15:36:47 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.connected to target database: ORCL (DBID=1210313093)
将月末的rman备份设置为永久保留
一、需求:将月末的rman备份设置为永久保留二、解决思路: 1、可以使用change backup ... keep forever nologs语句将备份集设置为永久保留 2、为了区分需要永久保留的备份集,在月末备份的时候,使用tag标记备份集,即在每个backup语句后加上tag '200907'格式的语句 3、在备份集中不能包含archive log,否则不能使用keep ... nologs选项三、测试oracle@oracle[/rman]> export ORACLE_SID=orcloracle@oracle[/rman]> rman target / catalog rman/rman@catalogRecovery Manager: Release 10.2.0.1.0 - Production on Mon Jun