hacmp 5.4.1 10gr2

2009.09.24 3:04 下午 »Author: bosonmaster »

在AIX系统上安装ORACLE 10GR2 RAC时,如果HACMP版本是5.4.1的,那么在安装CRS时,将无法看到节点信息,如下图
aix
这是ORACLE的一个BUG,相关PATCH文档号:Patch 6718715
Oracle 10gR2 patchset 10.2.0.3, CRS bundled Patch 6160398 is required. In addition, rootpre.sh Patch 6718715 is required when using HACMP 5.4.1 with a fresh install of Oracle RAC clusterware or when upgrading from Oracle 10gR1 to Oracle 10gR2. This patch should be installed on all nodes before installing Oracle 10.2.0.1 software. Be sure to download the 10gR2 version of Patch 6718715.

建议在AIX 下使用HACMP时,参照文档:404474.1,可以少走一些弯路

RAC VIP ORA-12545

2009.09.20 3:19 下午 »Author: bosonmaster »
最近在做一个RAC 实施时,发现客户应用连接RAC时,老是报ora-12545 因目标主机或对象不存在 连接失败,之前应用,因为我们使用的都是预连接,而且用的实际地址,所以没怎么遇到过,这次用的VIP,确总是报错,最后在METALINK364855.1
找到解决方法:
Symptoms
When we try to connect to a RAC service name we sometimes get redirected by the first node's listener to the public address/hostname of the second node instead of its VIP address. An ORA-12545 error may be generated if that public hostname is not configured in DNS.
 
We were expecting the connection to eventually be redirected to the VIP of the other node.
 
 
Cause
The Database on one RAC node remote registers with the wrong local IP address to the listener on the other RAC node (e.g. the public IP address instead of the wanted VIP address).
 
The PMON process handles database registration to the local and remote listeners. For remote listeners registration PMON will have to find out what is the IP address of the local system in order to present it to the remote listener as database contact address.
 
In the default Oracle configuration, for hosts which have more than one IP address configured on the network interfaces,  it is undefined which IP address will be selected for remote registration.
 
 
Solution
Modify the local_listener database parameter to point to the local VIP address. For the parameter value use either an alias name which contains in the DESCRIPTION field only the VIP address or use an explicit connection statement like the following:
alter system set LOCAL_LISTENER="(ADDRESS=(PROTOCOL=TCP)(HOST=<VIP_address>)(PORT=1521))" scope=both sid=
'instance_name';
记得一定要是双引号
 
 
Where "instance_name" is the unique instance name.   Issue this statement for all instances in the cluster. The LOCAL_LISTENER database parameter will give PMON a hint in respect of which IP address it should use for remote registration with other nodes
' listener(s).

修复包过程函数

2009.08.15 11:47 下午 »Author: bosonmaster »
当因为某种原因导致数据库所有的包、过程、函数无法使用时,临时可以用一下方法修复 SYS用户
 
SQL> alter package standard compile;
 
 
程序包已变更。
 
 
SQL> alter package dbms_standard compile;
 
 
程序包已变更。
 
 
SQL> @?/rdbms/admin/utlrp.sql
 
 
PL/SQL 过程已成功完成。

再战EM

2009.08.15 11:34 下午 »Author: bosonmaster »
周五在客户在给客户装了一套ORACLE,平台AIX 5309 64BITDB 10.2.0.4 DBCA的时候,在88%左右的时候就报EM有问题,这个之前遇到过很多次,都是DBCA完了处理一般没什么大问题。DBCA后,用一下方法去重新安装EM
 
 
drop user sysman cascade;
drop role MGMT_USER;
drop user MGMT_VIEW cascade;
drop public synonym MGMT_TARGET_BLACKOUTS;
drop public synonym SETEMVIEWUSERCONTEXT;
在安装
EM
 
emca -config dbcontrol db -repos create
可是还不
OK,启动的时候有如下报错提示:
ps: 0509-048 Flag -o was used with invalid list.
ps: Not a recognized flag: -
Usage: ps [-ANPaedfklmMZ] [-n namelist] [-F Format] [-o specifier[=header],...]
                [-
p proclist][-G|-g grouplist] [-t termlist] [-U|-u userlist] [-c classlist] [ -T pid] [ -L pidlist]
Usage: ps [aceglnsuvwxU] [t tty] [processnumber]
 
最后还是启动失败,一开始并没有太在意以上错误,后来重新搞了几次还是不行,看来必须先解决上面问题
 
METALINK发现如下文档:文档ID758568.1
Applies to:
Enterprise Manager Grid Control - Version: 10.2.0.3 to 10.2.0.4
IBM AIX Based Systems (64-bit)
 
Symptoms
 
'emctl start dbconsole' command shows ps command error as below:
 
$
ORACLE_HOME/bin/emctl start dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.3.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
http://<host>:<port>/em/console/aboutApplication
ps: 0509-048 Flag -o was used with invalid list.
ps: Not a recognized flag: -
Usage: ps [-ANPaedfklmMZ] [-n namelist] [-F Format] [-o specifier[=header],...]
[-
p proclist][-G|-g grouplist] [-t termlist] [-U|-u userlist] [-c classlist] [ -T
pid] [ -L pidlist]
Usage: ps [aceglnsuvwxU] [t tty] [processnumber]
Starting Oracle Enterprise Manager 10g Database Control .............. started.
----------------------------------------------------------------
--
Cause
In emctl.pl we have a command as below:
ps -p $PID -o cmd --cols 1000 |grep DEMDROOT
 
In AIX platforms for some OS kernels, this command doesn't work. The correct command is:
ps -p $PID -o args | grep DEMDROOT
 
Solution
If you get these errors while starting DBConsole, follow below action plan:
 
Follow below action plan.
 
a) Stop DBConsole -
'emctl stop dbconsole'
b) Take backup of
'emctl.pl' from $ORACLE_HOME/bin
c) Edit emctl.pl and goto line number 1249, which is:
my $ps=`ps -p $PID -o cmd --cols 1000 |grep DEMDROOT`;
Modify above line as below:
my $ps=`ps -p $PID -o args | grep DEMDROOT`;
d) Save the file.
e) Start DBConsole -
'emctl start dbconsole' from $ORACLE_HOME/bin
 
安装上边处理完后,停止EM的时候有如下报错:
$ emctl stop dbconsole
 
Oracle Enterprise Manager 10g Database Control Release 10.2.0.4.0 
 
Copyright (c) 1996, 2007 Oracle Corporation.  All rights reserved.
 
https://host:1158/em/console/aboutApplication
 
Stopping Oracle Enterprise Manager 10g Database Control ...
 
--- Failed to shutdown DBConsole Gracefully ---
 
 failed.
 
处理方法:
 
KILL 掉oc4j和dbconsole相关进程,然后停止em agent 和dbconsole就好了
 
在重新启动的时候还是没有启动起来,
emctl.trc有如下报错
 
009-08-14 19:20:15 Thread-1958 ERROR http: 11: Unable to initialize ssl connection with server, aborting connection attempt
2009-08-14 19:20:15 Thread-1958 ERROR pingManager: nmepm_pingReposURL: Cannot connect to https://host:1158/em/upload/: retStatus=-1
2009-08-14 19:20:15 Thread-1958 ERROR ssl: Open wallet failed, ret = 28750
2009-08-14 19:20:15 Thread-1958 ERROR ssl: nmehlenv_openWallet failed
2009-08-14 19:20:15 Thread-1958 ERROR http: 11: Unable to initialize ssl connection with server, aborting connection attempt
2009-08-14 19:20:15 Thread-1958 ERROR pingManager: nmepm_pingReposURL: Cannot connect to https://host:1158/em/upload/: retStatus=-1
2009-08-14 19:20:23 Thread-1960 ERROR upload: Error in uploadXMLFiles.  Trying again in 300.00 seconds.
2009-08-14 19:20:45 Thread-1966 ERROR ssl: Open wallet failed, ret = 28750
2009-08-14 19:20:45 Thread-1966 ERROR ssl: nmehlenv_openWallet failed
2009-08-14 19:20:45 Thread-1966 ERROR http: 12: Unable to initialize ssl connection with server, aborting connection attempt
2009-08-14 19:20:45 Thread-1966 ERROR pingManager: nmepm_pingReposURL: Cannot connect to https://host:1158/em/upload/: retStatus=-1
2009-08-14 19:20:45 Thread-1966 ERROR ssl: Open wallet failed, ret = 28750
2009-08-14 19:20:45 Thread-1966 ERROR ssl: nmehlenv_openWallet failed
2009-08-14 19:20:45 Thread-1966 ERROR http: 12: Unable to initialize ssl connection with server, aborting connection attempt
2009-08-14 19:20:45 Thread-1966 ERROR pingManager: nmepm_pingReposURL: Cannot connect to https://host:1158/em/upload/: retStatus=-1
2009-08-14 19:20:45 Thread-1967 ERROR ssl: Open wallet failed, ret = 28750
2009-08-14 19:20:45 Thread-1967 ERROR ssl: nmehlenv_openWallet failed
2009-08-14 19:20:45 Thread-1967 ERROR http: 12: Error initializing SSL connection for incoming request, aborting request. ret=-1
2009-08-14 19:20:52 Thread-1969 ERROR upload: Error in uploadXMLFiles.  Trying again in 300.00 seconds.
2009-08-14 19:21:14 Thread-1029 ERROR ssl: Open wallet failed, ret = 28750
2009-08-14 19:21:14 Thread-1029 ERROR ssl: nmehlenv_openWallet failed
 
在文档:749243.1 有如下解决方法:
Applies to:
Enterprise Manager Grid Control - Version: 10.2.0.1
This problem can occur on any platform.
 
Symptoms
Database Console fails to start with:
 
emctl start dbconsole
 
TZ set to Europe/Madrid
Oracle Enterprise Manager 10g Database Control Release 10.2.0.3.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
https://myserver.mydomain:5503/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control
.............................................................................................
failed.
 
emdctl.trc
-----------
2008-09-15 10:58:20 Thread-4136126688 ERROR http: 8: Unable to initialize ssl connection with
server, aborting connection attempt
2008-09-15 10:59:52 Thread-4136126688 ERROR ssl: nzos_Handshake failed, ret=29024.
 
Cause
The Dbconsole certificate life time has expired.
Solution
Run the commands:
 
1. Unsecure the Dbconsole
- Unsecure database control using
$ORACLE_HOME/bin>emctl unsecure dbconsole
 
2. Force an upload:
 
$ORACLE_HOME/bin> emctl upload
 
3. Also consider Resecuring the Dbconsole
- Secure database control using
$ORACLE_HOME/bin>emctl secure dbconsole
 
 Starting with 10.2.0.4, HTTPS is used by default.
 
经过以上处理后就OK了,途中来来回回搞了不少次。
 
总结就是EM有问题了,一定要去$ORACLE_HOME/类似主机名的目录sysman/log看agent和emctl.trc emdb.nohup里报错,解决了那些报错。我想你的EM也不会有什么问题了

ksvcreate: Process(m000) creation failed

2009.06.23 5:26 下午 »Author: bosonmaster »
文档ID:418553.1
Applies to:
Oracle Server - Enterprise Edition - Version: 10.2 to 10.2
This problem can occur on any platform.
 
Symptoms
Switching a Physical Standby Database multiple to READ ONLY Mode will report the following Errors in the ALERT.LOG:
 
ksvcreate: Process(m000) creation failed
 
 
Changes
Switch Physical Standby from READ ONLY to apply and back to READ ONLY.
Cause
The Cause of this Problem has been identified in Bug 5583049.
Solution
There are two Workarounds available:
 
Restart the Instance..
or
 
 
Disable ADDM - Should be re-enabled if Standby takes up the Primary Role
          *
Set SGA_TARGET=0 and set shared_pool_size, db_cache_size, etc if using
            
Automatic SGA Memory Management (ASMM)
 
          *
Set STATISTICS_LEVEL=BASIC to disable statistics gathering
 
References
Bug 5583049 - 'KSVCREATE: PROCESS(M000) CREATION FAILED' AFTER STANDBY OPEN RO MULTIPLE TIMES