tag:blogger.com,1999:blog-30181961462962788922024-02-08T09:56:30.918-08:00Being Oracle Apps DBAsandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.comBlogger27125tag:blogger.com,1999:blog-3018196146296278892.post-32449385042223763282011-08-15T13:34:00.000-07:002011-08-15T13:34:09.884-07:0011g Agent Installation fails<div dir="ltr" style="text-align: left;" trbidi="on">./runInstaller -responseFile /oracle/Agent/linux_x64/response/additional_agent.rsp<br />
<br />
<br />
Starting Oracle Universal Installer...<br />
<br />
<br />
<br />
Checking Temp space: must be greater than 150 MB. Actual 6886 MB Passed<br />
<br />
Checking swap space: must be greater than 150 MB. Actual 3851 MB Passed<br />
<br />
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed<br />
<br />
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2011-08-15_01-28-49PM. Please wait ...[oracle@dw001.snc3 /oracle/Agent/linux_x64/agent/install]$ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
ERROR: /oracle/Agent/linux_x64/agent//install/response//emnoseed.rsp file doesnot exists.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div closure_uid_tomv4q="119"><strong>Solution :</strong> </div><div closure_uid_tomv4q="119"><strong></strong> </div><div closure_uid_tomv4q="119"><strong>1) create the response file. </strong></div><div closure_uid_tomv4q="119"><strong>2) Copy the response file to location where the emnoseed.rsp file should be . ( whatever location installer complains about)</strong> </div><div closure_uid_tomv4q="119"> </div><div closure_uid_tomv4q="119">eg : /oracle/Agent/linux_x64/agent//install/response//emnoseed.rsp </div><div closure_uid_tomv4q="119"> </div><div closure_uid_tomv4q="119"> cp /oracle/Agent/linux_x64/response/additional_agent.rsp /oracle/Agent/linux_x64/agent//install/response//emnoseed.rsp </div><div closure_uid_tomv4q="119"> </div><div closure_uid_tomv4q="119"><strong>3) rerun the installer with ( or without ) responsefile.</strong> </div><div closure_uid_tomv4q="119"><br />
</div></div>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-9736602267823508132011-06-01T17:33:00.000-07:002011-06-01T17:33:33.917-07:00keytool error: java.lang.Exception: Certificate not imported, alias already exists<div dir="ltr" style="text-align: left;" trbidi="on">/usr/java/jdk1.6.0_24/jre/bin/keytool -import -keystore /usr/java/jdk1.6.0_24/jre/lib/security/cacerts -file /tmp/prodrootca.cer -storepass changeit<br />
<br />
<br />
keytool error: java.lang.Exception: Certificate not imported, alias <mykey>already exists <br />
<br />
<br />
<br />
SOLUTION: <br />
<br />
Add the alias key as the default naming already exists <br />
<br />
/usr/java/jdk1.6.0_24/jre/bin/keytool -import -keystore /usr/java/jdk1.6.0_24/jre/lib/security/cacerts -<span style="color: red;">alias prodintermediateca</span> -file /tmp/prodintermediateca.cer -storepass changeit</div>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-44536273983743410582011-05-27T15:51:00.000-07:002011-05-27T15:51:23.349-07:00BI publisher scheduler configurations fails<div dir="ltr" style="text-align: left;" trbidi="on"><br />
<b>When we enter the DB information and try scheduling the schema it fails with below error</b><br />
<br />
<span style="font-size: x-small;">Content-Length: 285<br />
<br />
]] Root cause of ServletException.<br />
java.lang.NoClassDefFoundError: oracle/xml/parser/schema/XSDBuilder<br />
at oracle.toplink.platform.xml.xdk.XDKPlatform.<init>(XDKPlatform.java:55)<br />
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)<br />
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)<br />
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)<br />
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)<br />
at java.lang.Class.newInstance0(Class.java:355)<br />
at java.lang.Class.newInstance(Class.java:308)<br />
at oracle.toplink.internal.security.PrivilegedAccessHelper.newInstanceFromClass(PrivilegedAccessHelper.java:335)<br />
at oracle.toplink.platform.xml.XMLPlatformFactory.getXMLPlatform(XMLPlatformFactory.java:95)<br />
at oracle.toplink.tools.sessionconfiguration.XMLSessionConfigLoader.loadDocument(XMLSessionConfigLoader.java:331)<br />
at oracle.toplink.tools.sessionconfiguration.XMLSessionConfigLoader.loadDocument(XMLSessionConfigLoader.java:298)<br />
at oracle.toplink.tools.sessionconfiguration.XMLSessionConfigLoader.load(XMLSessionConfigLoader.java:220)<br />
at oracle.toplink.tools.sessionmanagement.SessionManager.getSession(SessionManager.java:448)<br />
at oracle.toplink.tools.sessionmanagement.SessionManager.getSession(SessionManager.java:409)<br />
at oracle.apps.xdo.servlet.scheduler.toplink.XmlpTableCreator.createSession(XmlpTableCreator.java:884)<br />
at oracle.apps.xdo.servlet.scheduler.toplink.XmlpTableCreator.installSchema(XmlpTableCreator.java:731)<br />
at oracle.apps.xdo.servlet.ui.admin.SchedulerConfigPage.installSchema(SchedulerConfigPage.java:300)<br />
at oracle.apps.xdo.servlet.ui.admin.SchedulerConfigPage.doPost(SchedulerConfigPage.java:182)<br />
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)<br />
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)<br />
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)<br />
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)<br />
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)<br />
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)<br />
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)<br />
at oracle.apps.xdo.servlet.security.SecurityFilter.doFilter(SecurityFilter.java:86)<br />
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)<br />
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)<br />
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)<br />
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)<br />
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)<br />
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)<br />
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)<br />
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)<br />
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)<br />
at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)</init></span><br />
<br />
<br />
<br />
<b>Solution:</b><br />
<br />
<br />
The WebLogic can’t access the Toplink libraries (a Java persistence layer from Oracle) that it needs to create the database tables for the scheduler. <br />
Now Toplink is shipped with the BI Publisher software, but you need to edit the script that launches the WebLogic Admin Server so that it knows about it. <br />
<br />
<b>To do this, </b><br />
<br />
shut down the WeLogic Admin Server (just CTRL-C in the console window that’s running it), locate the script that runs the Admin Server startup <br />
(mine was at /opt/app/oracle/test/midfortest/user_projects/domains/test_domain/bin/startWebLogic.sh) and add -Dtoplink.xml.platform=oracle.toplink.platform.xml.jaxp.JAXPPlatform to the startup script, so that it goes from this:<br />
<br />
if [ "${WLS_REDIRECT_LOG}" = "" ] ; then<br />
echo "Starting WLS with line:"<br />
echo "${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS} ${PROXY_SETTINGS} ${SERVER_CLASS}"<br />
${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS} ${PROXY_SETTINGS} ${SERVER_CLASS}<br />
else<br />
echo "Redirecting output from WLS window to ${WLS_REDIRECT_LOG}"<br />
${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS} ${PROXY_SETTINGS} ${SERVER_CLASS} >"${WLS_REDIRECT_LOG}" 2>&1<br />
fi<br />
<br />
to this<br />
<br />
if [ "${WLS_REDIRECT_LOG}" = "" ] ; then<br />
echo "Starting WLS with line:"<br />
echo "${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS} <span style="color: red;">-Dtoplink.xml.platform=oracle.toplink.platform.xml.jaxp.JAXPPlatform </span>${PROXY_SETTINGS} ${SERVER_CLASS}"<br />
${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS} -Dtoplink.xml.platform=oracle.toplink.platform.xml.jaxp.JAXPPlatform ${PROXY_SETTINGS} ${SERVER_CLASS}<br />
else<br />
echo "Redirecting output from WLS window to ${WLS_REDIRECT_LOG}"<br />
${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS} <span style="color: red;">-Dtoplink.xml.platform=oracle.toplink.platform.xml.jaxp.JAXPPlatform</span> ${PROXY_SETTINGS} ${SERVER_CLASS} >"${WLS_REDIRECT_LOG}" 2>&1<br />
fi</div>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com1tag:blogger.com,1999:blog-3018196146296278892.post-37407611715568510512011-05-27T15:45:00.000-07:002011-05-27T15:45:29.303-07:00Starting the BI application for OIM will fail with below error<div dir="ltr" style="text-align: left;" trbidi="on">Message icon - Error weblogic.application.ModuleException: [HTTP:101216]Servlet: "QuartzInitializer" failed to preload on startup in Web application: "xmlpserver". oracle.apps.xdo.servlet.resources.ResourceNotFoundException: /opt/app/oracle/test/midfortest/deployment/xmlpserver/xdo/repository/Admin/Scheduler/quartz-config.properties at oracle.apps.xdo.servlet.ReportException.fillInStackTrace(ReportException.java:124) at java.lang.Throwable.<init>(Throwable.java:196) at java.lang.Exception.<init>(Exception.java:41) at oracle.apps.xdo.servlet.ReportException.<init>(ReportException.java:36) at oracle.apps.xdo.servlet.resources.ResourceNotFoundException.<init>(ResourceNotFoundException.java:20) at oracle.apps.xdo.servlet.resources.FileConfigProvider.getConfigInputStream(FileConfigProvider.java:434) at oracle.apps.xdo.servlet.scheduler.quartz.ExtendedQuartzInitializerServlet.init(ExtendedQuartzInitializerServlet.java:56) at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64) at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58) at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48) at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539) at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1985) at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1959) at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1878) at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153) at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508) at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200) at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247) at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27) at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52) at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205) at weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:43) at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161) at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79) at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569) at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150) at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116) at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:140) at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323) at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844) at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253) at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440) at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163) at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195) at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13) at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207) at weblogic.work.ExecuteThread.run(ExecuteThread.java:176) :oracle.apps.xdo.servlet.resources.ResourceNotFoundException:/opt/app/oracle/test/midfortest/deployment/xmlpserver/xdo/repository/Admin/Scheduler/quartz-config.properties<br />
<br />
<br />
<br />
Solution is to :<br />
<br />
<br />
Set up the BI Publisher repository.<br />
To set up the BI Publisher repository, copy the XMLP repository to a location on<br />
your server, then edit the configuration file to point to the saved location, as<br />
follows:<br />
a. Copy the XMLP repository directory from \manual on your installation media<br />
to your server.<br />
b. Open the xmlp-server-config.xml file located in the<br />
c:mydestination\xmlpserver\WEB-INF\<br />
directory where you unpacked the ear or war file.<br />
c. Replace ${oracle.home}/xdo/repository with the file path to the<br />
location where you copied the XMLP repository directory on your server. For<br />
example, if you copied the repository directory to<br />
/home/repository/XMLP, update the xmlp-server-config.xml file as<br />
follows:<br />
<br />
<xmlpconfig xmlns="http://xmlns.oracle.com/oxp/xmlp"><br />
<resource><br />
<file path="/home/repository/XMLP"><br />
</file></resource><br />
d. Save xmlp-server-config.xml after updating.<br />
</xmlpconfig></init></init></init></init></init></div>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-20917027757500981592011-05-27T15:38:00.001-07:002011-05-27T15:43:59.117-07:00Managed Server failed to start when started from console.<div dir="ltr" style="text-align: left;" trbidi="on">failed with below Error<br />
<br />
<may 12:14:02="" 16,="" 2011="" pm=""> <info> <nodemanager> <server app="" domains="" file="" is="" log="" logs="" manage2.out="" manage2="" midfortest="" opt="" oracle="" output="" servers="" test="" test_domain="" user_projects=""><br />
<may 12:14:02="" 16,="" 2011="" pdt="" pm=""> <info> <security> <bea-090905> <disabling -dweblogic.security.allowcryptojdefaultjceverification="true" better="" check,="" check="" cryptoj="" enable="" for="" jce="" performance.="" provider="" self-integrity="" specify="" startup="" this="" to=""><br />
<may 12:14:02="" 16,="" 2011="" pdt="" pm=""> <info> <security> <bea-090906> <changing -dweblogic.security.allowcryptojdefaultprng="true" change,="" cryptoj="" default="" disable="" ecdrbg="" fips186prng.="" from="" generator="" in="" number="" random="" rsa="" specify="" the="" this="" to=""><br />
<may 12:14:03="" 16,="" 2011="" pdt="" pm=""> <notice> <weblogicserver> <bea-000395> <following added="" classpath:="" contents="" directory="" end="" extensions="" of="" the="" to=""><br />
Parsing Failure in config.xml: java.lang.AssertionError: java.lang.ClassNotFoundException: com.bea.wcp.sip.management.descriptor.beans.SipServerBean</following></bea-000395></weblogicserver></notice></may></changing></bea-090906></security></info></may></disabling></bea-090905></security></info></may></server></nodemanager></info></may><br />
<may 12:14:02="" 16,="" 2011="" pm=""><info><nodemanager><server app="" domains="" file="" is="" log="" logs="" manage2.out="" manage2="" midfortest="" opt="" oracle="" output="" servers="" test="" test_domain="" user_projects=""><may 12:14:02="" 16,="" 2011="" pdt="" pm=""><info><security><bea-090905><disabling -dweblogic.security.allowcryptojdefaultjceverification="true" better="" check,="" check="" cryptoj="" enable="" for="" jce="" performance.="" provider="" self-integrity="" specify="" startup="" this="" to=""><may 12:14:02="" 16,="" 2011="" pdt="" pm=""><info><security><bea-090906><changing -dweblogic.security.allowcryptojdefaultprng="true" change,="" cryptoj="" default="" disable="" ecdrbg="" fips186prng.="" from="" generator="" in="" number="" random="" rsa="" specify="" the="" this="" to=""><may 12:14:03="" 16,="" 2011="" pdt="" pm=""><notice><weblogicserver><bea-000395><following added="" classpath:="" contents="" directory="" end="" extensions="" of="" the="" to=""> </following></bea-000395></weblogicserver></notice></may></changing></bea-090906></security></info></may></disabling></bea-090905></security></info></may></server></nodemanager></info></may><br />
<may 12:14:02="" 16,="" 2011="" pm=""><info><nodemanager><server app="" domains="" file="" is="" log="" logs="" manage2.out="" manage2="" midfortest="" opt="" oracle="" output="" servers="" test="" test_domain="" user_projects=""><may 12:14:02="" 16,="" 2011="" pdt="" pm=""><info><security><bea-090905><disabling -dweblogic.security.allowcryptojdefaultjceverification="true" better="" check,="" check="" cryptoj="" enable="" for="" jce="" performance.="" provider="" self-integrity="" specify="" startup="" this="" to=""><may 12:14:02="" 16,="" 2011="" pdt="" pm=""><info><security><bea-090906><changing -dweblogic.security.allowcryptojdefaultprng="true" change,="" cryptoj="" default="" disable="" ecdrbg="" fips186prng.="" from="" generator="" in="" number="" random="" rsa="" specify="" the="" this="" to=""><may 12:14:03="" 16,="" 2011="" pdt="" pm=""><notice><weblogicserver><bea-000395><following added="" classpath:="" contents="" directory="" end="" extensions="" of="" the="" to=""><may 12:14:03="" 16,="" 2011="" pdt="" pm=""><info><server><bea-002647><the added="" app="" com.oracle.core.sip.activator,="" domains="" from="" lib="" midfortest="" opt="" oracle="" plugin,="" service="" sipactivator.jar.="" test="" test_domain="" user_projects="" was=""><may 12:14:03="" 16,="" 2011="" pdt="" pm=""><info><weblogicserver><bea-000377><starting 16.0-b13="" 64-bit="" from="" hotspot(tm)="" inc.="" java="" microsystems="" server="" sun="" version="" vm="" weblogic="" with=""> <may 12:14:04="" 16,="" 2011="" pdt="" pm=""> <info> <management> <bea-141107> <version: 10.3.4.0 ="" 1384255="" 17="" 2010="" 20:47:33="" dec="" fri="" pst="" server="" weblogic=""><may 12:14:06="" 16,="" 2011="" pdt="" pm=""><critical><weblogicserver><bea-000362><server [management:141266]parsing="" com.bea.wcp.sip.management.descriptor.beans.sipserverbean="" config.xml:="" failed.="" failure="" in="" java.lang.assertionerror:="" java.lang.classnotfoundexception:="" reason:=""><br />
<br />
<b><br />
SOLUTION:</b><br />
<br />
<br />
You have to make sure this class is in the classpath: com.bea.wcp.sip.management.descriptor.beans.SipServerBean.<br />
<br />
You have to edit the nodemanager.properties file and set the variable StartScriptEnabled=true instead of the default false.<br />
The nodemanager.properties file is usually located in the directory: <middleware-home>/wlserver_10.3/common/nodemanager.<br />
<br />
Now the nodemanager uses the start script usually startWebLogic, which calls the setDomainEnv in which the classpath for the SIP server is set.<br />
<br />
When you use the startManagedServer command the setDomainEnv is called so the classpath is set.<br />
</middleware-home></server></bea-000362></weblogicserver></critical></may></version:></bea-141107></management></info></may></starting></bea-000377></weblogicserver></info></may></the></bea-002647></server></info></may></following></bea-000395></weblogicserver></notice></may></changing></bea-090906></security></info></may></disabling></bea-090905></security></info></may></server></nodemanager></info></may></div>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com2tag:blogger.com,1999:blog-3018196146296278892.post-31614402676292891712010-12-21T18:05:00.000-08:002010-12-21T18:05:57.787-08:00PATCH 9239090<br />
<br />
Adworker fails with below error<br />
<br />
<br />
<br />
<br />
ATTENTION: All workers either have failed or are waiting:<br />
<br />
<br />
<br />
<br />
FAILED: file bomprg.ldt on worker 2.<br />
<br />
FAILED: file jg12acp.ldt on worker 3.<br />
<br />
<br />
<br />
Dumping LCT file /db2/oracle/EBS/DEV1/apps/apps_st/appl/fnd/12.0.0/patch/115/import/afcpprog.lct(120.2.12010000.2) into FND_SEED_STAGE_CONFIG<br />
<br />
<br />
Dumping LDT file /db2/oracle/EBS/DEV1/apps/apps_st/appl/bom/12.0.0/patch/115/import/US/bomprg.ldt into FND_SEED_STAGE_ENTITY<br />
<br />
A database error occurred:<br />
<br />
ORA-24816: Expanded non LONG bind data supplied after actual LONG or LOB column<br />
<br />
<br />
<br />
Solution: Set the env and run the program manually or<br />
<br />
<br />
To implement the solution, please execute the following steps:<br />
<br />
<br />
<br />
<br />
If the Patch is stopped please just change setup for environment variable NLS_LANG to proper value and restart adpatch (continue previous session).<br />
<br />
<br />
<br />
For example:<br />
<br />
<br />
<br />
If the database characterset is UTF8 set NLS_LANG to American_America.UTF8.<br />
<br />
<br />
<br />
a. Execute 'export' as follows.<br />
<br />
<br />
<br />
# export NLS_LANG=American_America.UTF8<br />
<br />
<br />
<br />
b. Query value for NLS_LANG to verify it.<br />
<br />
<br />
<br />
#echo $NLS_LANG (Unix) <br />
<br />
>echo %NLS_LANG% (Windows)<br />
<br />
<br />
<br />
OR<br />
<br />
<br />
<br />
If adpatch is still running but hanging due to failed workers:<br />
<br />
<br />
<br />
1. Stop adpatch.<br />
<br />
<br />
<br />
Please use adctrl utility to stop adpatch.<br />
<br />
<br />
<br />
The best way to do this is to shut down the workers manually, which<br />
<br />
also causes the AD utility to quit in an orderly fashion.<br />
<br />
<br />
<br />
Action<br />
<br />
a. Select AD Controller(adctrl) Option 3 and enter all for the worker number. Each worker<br />
<br />
stops once it completes or fails its current job.<br />
<br />
<br />
<br />
b. Verify that no worker processes are running. Use a command similar to the one<br />
<br />
in the following example. The command arguments may vary on different<br />
<br />
platforms.<br />
<br />
UNIX:<br />
<br />
$ ps -a <br />
grep adworker<br />
<br />
Windows:<br />
<br />
Invoke the Task Manager (Ctrl-Alt-Delete) to view processes.<br />
<br />
<br />
<br />
c. When all workers have shut down, the manager and the AD utility quits.<br />
<br />
<br />
<br />
2. Change NLS_LANG setup.<br />
<br />
<br />
<br />
Please refer to the example above.<br />
<br />
<br />
<br />
3. Start adpatch again, continue previous session.<br />
<br />
<br />
<br />
Check if AutoPatch is progressing, if not use adctrl utility, option 2 to restart failing worker.<br />
<br />
<br />
<br />
4. How to avoid similar issue in the future.<br />
<br />
<br />
<br />
Verify NLS_LANG setup in the Autoconfig Context file.<br />
<br />
<br />
<br />
Edit the context file using Oracle Applications Manager(OAM) or Context Editor and find value for NLS_LANG:<br />
<br />
<br />
<br />
If the database characterset is UTF8 it should be:<br />
<br />
<br />
<br />
<nls_lang oa_var="s_tools_nlslang">American_America.UTF8</nls_lang><br />
<br />
<nls_lang oa_var="s_weboh_nlslang">American_America.UTF8</nls_lang><br />
<br />
<nls_lang oa_var="s_nlslang">American_America.UTF8</nls_lang><br />
<br />
<br />
<br />
If NLS_LANG parameters have different values than expected please apply corrections. Then execute Autoconfig and make sure it was successful.<br />
<br />
<br />
<br />
5. Test if the changes to NLS_LANG were successful.<br />
<br />
<br />
<br />
Source the env file and query:<br />
<br />
<br />
<br />
#echo $NLS_LANG (Unix)<br />
<br />
>echo %NLS_LANG% (Windows)sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-56103148938198899432010-10-10T20:15:00.000-07:002010-10-10T20:16:14.553-07:00runInstaller doesnot display ASM disks during 11gR2 grid (cluster) installation<span style="font-family: "Courier New", Courier, monospace;"><strong>During 11gR2 Grid installation the candidate disks for vote and ocr were not displayed in the list screen. The issue may be many but one of the reason for this behaviour is the permission .</strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><strong></strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
<strong></strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><strong>The runinstaller uses /usr/sbin/oracleasm-discover to to display the files and not oracleasm and its behaviour mainly depends on the filepermissoins under /dev/oracleasm</strong></span><br />
<br />
<span style="font-family: "Courier New", Courier, monospace;"><strong>EG: ( First we will use root user and then the actual user trying to install the software )</strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;">[oragrd@appsonline-rac dev]$ cd oracleasm</span></span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[oragrd@appsonline-rac oracleasm]$ cd disks</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[oragrd@appsonline-rac disks]$ ls</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;">SOAPRD_DATA01 SOAPRD_DATA02 SOAPRD_DATA03 SOAPRD_DATA04 SOAPRD_FRA01 SOAPRD_FRA02 SOAPRD_FRA03 SOAPRD_FRA04 SOAPRD_VOTE01 SOAPRD_VOTE02 SOAPRD_VOTE03</span></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;"><a href="mailto:root@appsonline-rac">mailto:root@appsonline-rac</a></span></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;">/usr/sbin/oracleasm</span></span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac disks]# ls -l /usr/sbin/oracleasm*</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;">-rwxr-xr-x 1 root root 16600 Mar 18 2009 /usr/sbin/oracleasm</span></span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxr-xr-x 1 root root 10664 Mar 18 2009 /usr/sbin/oracleasm-discover</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac disks]# which oracleasm-discover</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><strong><span style="font-size: x-small;">/usr/sbin/oracleasm-</span>discover</strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace;"><strong>Run the Discover Command</strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"> </span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac disks]# oracleasm-discover</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">ASM Library - Generic Linux, version 2.0.4 (KABI_V2)]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA01 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA02 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA03 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA04 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA01 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA02 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA03 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA04 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_VOTE01 [2096753 blocks (1073537536 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_VOTE02 [2096753 blocks (1073537536 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_VOTE03 [2096512 blocks (1073414144 bytes), maxio 512]</span><br />
<br />
<span style="font-family: "Courier New", Courier, monospace;"><strong>Now Try executing the same commands as user than will own the Cluster , in my example its oragrd</strong></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
<span style="font-size: x-small;"></span></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;">[root@appsonline-rac disks]# su - oragrd</span></span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[oragrd@appsonline-rac ~]$ /usr/sbin/oracleasm-discover</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;">asm_version() failed with code 2</span></span><br />
<br />
<span style="font-family: "Courier New", Courier, monospace;"><strong>If this fails then try tracing the session to find what exactly is the error. The above error is misleading and has nothing to do with library.</strong></span><br />
<br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: x-small;">[oragrd@appsonline-rac ~]$ strace /usr/sbin/oracleasm-discover >/tmp/11.log</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">execve("/usr/sbin/oracleasm-discover", ["/usr/sbin/oracleasm-discover"], [/* 19 vars */]) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">brk(0) = 0x1692f000</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(NULL, 4096, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_ANONYMOUS, -1, 0) = 0x2b0dd6b39000</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">uname({sys="Linux", node="appsonline-rac.oracle.com", ...}) = 0</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">open("/etc/ld.so.cache", O_RDONLY) = 3</span><span style="color: #134f5c;"><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;"></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">fstat(3, {st_mode=S_IFREG</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">0644, st_size=104289, ...}) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(NULL, 104289, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b0dd6b3a000</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">close(3) = 0</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">open("/lib64/libdl.so.2", O_RDONLY) = 3</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\16 \0331\0\0\0"..., 832) = 832</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">fstat(3, {st_mode=S_IFREG</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">0755, st_size=23360, ...}) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(NULL, 4096, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_ANONYMOUS, -1, 0) = 0x2b0dd6b54000</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">map(0x311b200000, 2109696, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_EXEC, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_DENYWRITE, 3, 0) = 0x311b200000</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mprotect(0x311b202000, 2097152, PROT_NONE) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(0x311b402000, 8192, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_FIXED</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_DENYWRITE, 3, 0x2000) = 0x311b402000</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">close(3) = 0</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">open("/lib64/libc.so.6", O_RDONLY) = 3</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\332\241\0321\0\0\0"..., 832) = 832</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">fstat(3, {st_mode=S_IFREG</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">0755, st_size=1713088, ...}) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(0x311aa00000, 3494168, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_EXEC, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_DENYWRITE, 3, 0) = 0x311aa00000</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mprotect(0x311ab4c000, 2097152, PROT_NONE) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(0x311ad4c000, 20480, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_FIXED</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_DENYWRITE, 3, 0x14c000) = 0x311ad4c000</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(0x311ad51000, 16664, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_FIXED</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_ANONYMOUS, -1, 0) = 0x311ad51000</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">close(3) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(NULL, 4096, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_ANONYMOUS, -1, 0) = 0x2b0dd6b55000</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">arch_prctl(ARCH_SET_FS, 0x2b0dd6b55800) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mprotect(0x311b402000, 4096, PROT_READ) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mprotect(0x311ad4c000, 16384, PROT_READ) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mprotect(0x311a81b000, 4096, PROT_READ) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">munmap(0x2b0dd6b3a000, 104289) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">brk(0) = 0x1692f000</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">brk(0x16950000) = 0x16950000</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">open("/opt/oracle/extapi/64/asm/orcl/1/libasm.so", O_RDONLY) = 3</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\21\0\0\0\0\0\0"..., 832) = 832</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">fstat(3, {st_mode=S_IFREG</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">755, st_size=18176, ...}) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(NULL, 2113440, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_EXEC, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_DENYWRITE, 3, 0) = 0x2b0dd6b56000</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mprotect(0x2b0dd6b5a000, 2093056, PROT_NONE) = 0</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(0x2b0dd6d59000, 4096, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_FIXED</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">MAP_DENYWRITE, 3, 0x3000) = 0x2b0dd6d59000</span><br />
<span style="color: #134f5c;"><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;"></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">close(3) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">fstat(1, {st_mode=S_IFREG</span></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">644, st_size=0, ...}) = 0</span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">mmap(NULL, 4096, PROT_READ</span></span></span><br />
<span style="color: #134f5c;"><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: xx-small;">PROT_WRITE, MAP_PRIVATE</span></span></span><br />
<span style="color: red; font-family: "Courier New", Courier, monospace; font-size: x-small;">MAP_ANONYMOUS, -1, 0) = 0x2b0dd6d5a000</span><br />
<span style="color: red; font-family: "Courier New", Courier, monospace; font-size: x-small;">open("/dev/oracleasm/.query_version", O_RDWR) = -1 EACCES (Permission denied)</span><br />
<span style="color: red; font-family: "Courier New", Courier, monospace; font-size: x-small;">open("/dev/oracleasm/iid", O_RDONLY) = -1 EACCES (Permission denied)</span><br />
<span style="color: red; font-family: "Courier New", Courier, monospace; font-size: x-small;">write(2, "asm_version() failed with code 2"..., 33asm_version() failed with code 2</span><br />
<span style="color: red; font-family: "Courier New", Courier, monospace; font-size: x-small;">) = 33</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
<span style="font-size: x-small;"></span></span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">write(1, "Using ASMLib from /opt/oracle/ex"..., 61) = 61</span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">exit_group(2) </span><br />
<span style="color: #134f5c; font-family: "Courier New", Courier, monospace; font-size: xx-small;">= ?</span><br />
<br />
<br />
<span style="font-family: "Courier New", Courier, monospace;">The above error shows its unable to read some file under /dev/oracleasm . So change the permissions as below.</span><br />
<br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# ls -lart</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;"></span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
<span style="font-size: x-small;"></span></span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">total 0</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 root root 0 Jul 12 13:17 .query_version</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 root root 0 Jul 12 13:17 .query_disk</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxrwx--- 1 root root 0 Jul 12 13:17 iid</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 root root 0 Jul 12 13:17 .get_iid</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxr-xr-x 1 root root 0 Jul 12 13:17 disks</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 root root 0 Jul 12 13:17 .check_iid</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">rwxr-xr-x 4 root root 0 Jul 12 13:17 .</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">rwxr-xr-x 15 root root 6860 Jul 13 14:51 ..</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
<span style="font-size: x-small;"></span></span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# chown oragrd:asmdba /dev/oracleasm/.query_version</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><br />
<span style="font-size: x-small;"></span></span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# chown -R oragrd:asmdba iid</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# chown -R oragrd:asmdba .q*</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxr-xr-x 15 root root 6860 Jul 13 14:51 ..</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# chown -R oragrd:asmdba .check_iid .get_iid</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# ls -lart</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">total 0</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 oragrd asmdba 0 Jul 12 13:17 .query_version</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 oragrd asmdba 0 Jul 12 13:17 .query_disk</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxrwx--- 1 oragrd asmdba 0 Jul 12 13:17 iid</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 oragrd asmdba 0 Jul 12 13:17 .get_iid</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxr-xr-x 1 root root 0 Jul 12 13:17 disks</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">-rwxrwx--- 1 oragrd asmdba 0 Jul 12 13:17 .check_iid</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxr-xr-x 4 root root 0 Jul 12 13:17 .</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">drwxr-xr-x 15 root root 6860 Jul 13 14:51 ..</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace;"><span style="font-size: x-small;"><strong><span style="font-size: small;">Rerun the command</span></strong> </span></span><br />
<br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[root@appsonline-rac oracleasm]# su - oragrd</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: x-small;">[oragrd@appsonline-rac ~]$ /usr/sbin/oracleasm-discover</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so</span><br />
<span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">[ASM Library - Generic Linux, version 2.0.4 (KABI_V2)]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">iscovered disk: ORCL:SOAPRD_DATA01 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA02 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA03 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_DATA04 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA01 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA02 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA03 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_FRA04 [93803472 blocks (48027377664 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_VOTE01 [2096753 blocks (1073537536 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_VOTE02 [2096753 blocks (1073537536 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace; font-size: xx-small;">Discovered disk: ORCL:SOAPRD_VOTE03 [2096512 blocks (1073414144 bytes), maxio 512]</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><br />
<span style="font-family: "Courier New", Courier, monospace;"><strong>Once you are done either restart the runinstaller or Browse and manually enter the discovery path.</strong></span><br />
<br />
<br />
<span style="font-family: "Courier New", Courier, monospace;">Thanks , Sandarsh Chavalmane</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span><span style="font-family: "Courier New", Courier, monospace;"><br />
</span>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-17541253810710298372010-06-18T12:30:00.001-07:002010-06-18T12:51:09.250-07:00Disabling RAC on 11gR2There is some difference in enabling and disabling RAC on 11gR2 from the previous releases<br /><br />Before we disable we need to verify if the products are really enabled.<br /><br /><br />cd $ORACLE_HOME/rdbms/lib<br /><br /><code class="km">ar -t libknlopt.a | grep -c kcsm.o </code><br /><br /><br />would return 0 if RAC is disabled or a number >0 if enabled<br /><br />For example:<br /><br />Environment where RAC is disabled:<br /><br />[oradev1@xxx lib]$ ar -t libknlopt.a |grep -c kcsm.o<br />0<br /><br /><br />Environment where RAC is enabled:<br /><br />[oragrd@xxx lib]$ ar -t libknlopt.a |grep -c kcsm.o<br />1<br /><br /><br /><br />DISABLE RAC:<br /><br />To disable rac at oracle binary level we need to execute the below command.<br /><br /><code class="km">make -f ins_rdbms.mk </code>rac_off<br /><br />After this ,relink the oracle exe<br /><br />cd $ORACLE_HOME<br />make -f rdbms/lib/ins_rdbms.mk ioracle<br /><br /><br />Similarly we can use below key words to disable other components in 11gR2<br /><br /><br /><ul><li>RAT - kecwr.o </li><li>OLS - kzlibac.o </li><li>DV - kzvidv.o </li><li>ASM - kfon.o </li><li>OLAP - xsyeolap.o </li><li>PART - kkpoban.o </li><li>CTX - kciwcx.o </li></ul><br /><p>where <em>{option}</em> is => OPTION - <em>{option on}</em> / <em>{option off }</em></p><br /><ul><li>RAT - rat_on / rat_off </li><li>OLS - lbac_on / lbac_off </li><li>DV - dv_on / dv_off </li><li>ASM - asm_on / asm_off </li><li>OLAP - olap_on / olap_off </li><li>PART - part_on / part_off </li><li>CTX - ctx_on / ctx_off </li></ul><br />Thanks ,<br />Sandarsh Chavalmanesandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com1tag:blogger.com,1999:blog-3018196146296278892.post-53561074925110378642010-06-17T13:27:00.000-07:002010-06-17T13:34:02.983-07:0011gR2 nodeapps vip issueVIP was down as it got attached to a different device.<br /><br />11gR2 RAC environment has the below issues.<br /><br /><br />When we run a installer or cluster verify you could see that nodeapps is not running .<br /><br />Verifying the nodeapps you see that one of the component (vip) is down.<br /><br /><br />[oragrd@XXX ~]$ srvctl status nodeapps -n XXX<br /><br />VIP xxx-vip is enabled<br />VIP xxx-vip is not running<br />Network is enabled<br />Network is running on node: xxx<br />GSD is enabled<br />GSD is running on node: xxx<br />ONS is enabled<br />ONS daemon is running on node: xxx<br />eONS is enabled<br />eONS daemon is running on node: xxx<br /><br /><br /><br />Check the status on cluster registry<br /><br /><br />$ crs_stat -t |grep vip<br />obi.vip application ONLINE ONLINE afso...b101<br />ora....101.vip ora....t1.type ONLINE OFFLINE<br />ora....102.vip ora....t1.type ONLINE OFFLINE<br />ora.scan1.vip ora....ip.type ONLINE ONLINE afso...b102<br />ora.scan2.vip ora....ip.type ONLINE ONLINE afso...b101<br />ora.scan3.vip ora....ip.type ONLINE ONLINE afso...b101<br /><br /><br />This indicates VIP is in inconsistent state. Now check weather vip is available on the network<br />Below command shows that vip is attached to eth3 and it is like a physical IP .<br /><br /><br />ifconfig -a<br /><br /><br />eth3 Link encap:Ethernet HWaddr F4:CE:46:AF:49:44<br /> inet addr:10.32.200.151 Bcast:10.32.200.255 Mask:255.255.255.0<br /> inet6 addr: fe80::f6ce:46ff:feaf:4944/64 Scope:Link<br /> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br /> RX packets:6116467 errors:0 dropped:0 overruns:0 frame:0<br /> TX packets:70229 errors:0 dropped:0 overruns:0 carrier:0<br /> collisions:0 txqueuelen:1000<br /> RX bytes:1504763071 (1.4 GiB) TX bytes:3056240 (2.9 MiB)<br /> Interrupt:139<br /><br /><br /><br />10.32.200.151 is our vip and its running. Ideally it should not be as crs_stat is showing its down.<br />When you try restarting , you see that VIP is already in use in the cluster log<br /><br />===============================<br /><br />2010-05-27 14:56:15.509: [UiServer][1520855360] Container [ Name: ORDER<br /> MESSAGE:<br /> TextMessage[CRS-5005: IP Address: 10.32.200.151 is already in use in the network]<br /> MSGTYPE:<br /> TextMessage[1]<br /> OBJID:<br /> TextMessage[ora.SOAIAT2.lsnr afsoqatdb102 1]<br /> WAIT:<br /> TextMessage[0]<br /><br />===============================<br /><br /><br /><br />Work Around to fix this issue:<br /><br />[oragrd@XXX ~]$ srvctl stop nodeapps -n XXX<br /><br />Bringdown the device to which vip is attached<br /><br />Run below command as root.<br /><br />ifdown eth3<br /><br /><br /><br />Run if config and make sure that eth3 is not running or attached to any device .<br /><br />Then start the nodeapps<br /><br />[oragrd@XXX ~]$ srvctl start nodeapps -n XXX<br /><br />Check the status.<br /><br />[oragrd@XXX ~]$ srvctl status nodeapps -n XXX<br />-n <node_name> option has been deprecated.<br />VIP XXX-vip is enabled<br />VIP XXX-vip is running on node: XXX<br />Network is enabled<br />Network is running on node: XXX<br />GSD is enabled<br />GSD is running on node: XXX<br />ONS is enabled<br />ONS daemon is running on node: XXX<br />eONS is enabled<br />eONS daemon is running on node: XXX<br /><br />Check on the cluster:<br /><br />[oragrd@XXX ~]$ crs_stat -t | grep vip<br />obi.vip application ONLINE ONLINE afso...b101<br />ora....101.vip ora....t1.type ONLINE ONLINE afso...b101<br />ora....102.vip ora....t1.type ONLINE ONLINE afso...b102<br />ora.scan1.vip ora....ip.type ONLINE ONLINE afso...b101<br />ora.scan2.vip ora....ip.type ONLINE ONLINE afso...b101<br />ora.scan3.vip ora....ip.type ONLINE ONLINE afso...b101<br />[oragrd@XXX ~]$<br /><br />Now make sure vip does not get attached to any device . In our case it was getting attached to eth3 . We need to disable it permanently<br /><br />cd /etc/sysconfig/network-scripts<br />vi ifcfg-eth3<br /><br />remove<br />IPADDR=<br />NETMASK=<br />PEERDNS=yes<br /><br /><br /><br /><br />This should prevent the device from picking up the IP after reboot.<br /><br />Thanks ,<br />Sandarsh Chavalmanesandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-84070026732638646552010-06-06T10:29:00.000-07:002010-06-08T18:23:53.846-07:00Hyperion Installation documentHyperion High Level Installation Steps<br /><br />Download PDF with Architecture Diagram.<a href="http://docs.google.com/fileview?id=0B2lVDbDeOySxNzIwZjhkYTEtNzk4My00MzhhLTkxMjAtMGFkMDRlOGRkZDU3&hl=en"> Hyperion Installation</a><br /><br />Here I am explaining about Hyperion installation on a distributed environment (High Level). Since planning and reporting are expected to consume high resources we kept these services separated.<br /><br />Hyperion Installation Steps.<br /><br />On LinuxDBHyperion.appsonlinedba.com<br />1) Install Oracle Binaries (11gR2) . Since we planned to test cold failover we had installed the oracle binaries on cluster.<br />2) Create a dummy (blank) db using DBCA.<br />3) Install 11gR2 client.<br />4) Install Hyperion essbase. You need to deselect all the other components which are selected by default.<br /><br /><br />On LinuxappHyperion.appsonlinedba.com<br />5) Install Foundation(Shared Services) and Financial reporting . By default essbase and planning are selected , deselect them before proceeding with the installation<br /><br />On WindowsHyperion.appsonlinedba.com<br />6) Installation Planning . Here you need to deselect other components which are checked by default.<br /><br />Hyperion Configuration Steps<br /><br />Create Schema:<br /><br />We can install each service on different schema or same schema. To isolate each module we created separate schemas<br /><br />Hss: stands for Hyperion shared services<br />Hbi: Hyperion Business Intelligence<br />heas: Hyperion essbase administration services’<br />hes: Hyperion essbase studio<br /><br />Configure different services:<br />When you invoke the installer it asks you about which service to configure make sure you do it as below on each server. Also make sure you select the correct schema created above .<br /><br />a) Configure Shared service ( LinuxappHyperion)<br />b) Configure essbase ( LinuxDBHyperion )<br />c) Configure Planning ( WindowsHyperion )<br />d) Configure Reporting ( LinuxappHyperion )<br /><br />Thanks ,<br />Sandarsh Chavalmanesandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com1tag:blogger.com,1999:blog-3018196146296278892.post-12671472047466436942010-04-03T10:24:00.000-07:002010-04-03T10:30:28.269-07:0011gR2 RAC , GRID infrastructure ASM ,vote ,ocr bla bla.... and a big confusion before you implement these.11gR2 RAC , GRID infrastructure ASM :<br /><br />Since I did my first implementation, I was interested in sharing <br /><br />1) Why is VOTE and OCR inside ASM?<br /> <br />Storing the OCR and vote disk inside ASM eliminates the need for third party cluster and volume managers and also helps eliminate the complexity of managing separate disk partitions for the OCR in oracle clusterware installations.<br />Better manageability. and also Oracle WANT to SELL RAC with ASM ,....<br /><br />2) How does cluster start as vote disk and OCR are inside ASM???<br /><br />In 11GR2, every node has a local registry called OLR. OLR is created during the installation and by default its located under $GRID_HOME/cdata/<HOSTNAME>.olr<br />This file actually facilitates the oracle cluterware to startup process when OCR and vote are inside ASM.<br /><br />During the startup OLR is referenced to determine the exact location of the vote disks. This will facilitate the node to join the cluster. After the initial phase ASM is started and the processes that require full OCR can start and the clusterware startup process completes.<br /><br />3) SAN and NAS.<br /><br />I always assumed EMC sells only SAN . But they too have NAS storage.Since we prefer to have block storage for oracle database we opted SAN for oracle software and NAS for usual NFS.<br /><br />Also good that now there is a EM plugin avaliable to monitor EMC disks. <br /><br /><br />Thanks<br /><br />Sandarsh Chavalmanesandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-49684535101748181462009-06-03T02:07:00.000-07:002009-06-03T02:34:07.806-07:00PCP in non-RAC instances - Pitfalls<div align="justify">It was a wonderful surprise when I stumbled upon Metalink Note ID: <a href="https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=743716.1">743716.1</a>, which details steps for configuring PCP in non-RAC instances.<br /><br /></div><br /><div align="justify"></div><br /><div align="justify">This is very useful while using hardware or software clustering and not Oracle clustering (RAC).<br /><br /></div><br /><div align="justify"></div><br /><div align="justify">We are using Veritas clustering (software clustering) for server failover. We were recently testing server failover and there are two things that I am unable to figure out as of now and which necessitates manual intervention rendering the whole failover mechanism manual:<br /><br /></div><br /><div align="justify"></div><br /><div align="justify"></div><br /><div align="justify">1. How would the VNC server failover when using PCP with non-RAC?<br /><br /></div><br /><div align="justify"></div><br /><div align="justify">Since, the hostname changes when the failover happens, the display variable would still be pointing to the failed server and not the failover server.</div><br /><p align="justify">The work around to the above problem is obviously to reset the display variable and run autoconfig, which would mean that the failover mechanism is no longer automatic.</p><br /><p align="justify"></p><br /><p align="justify">2. As soon as the failover happens, we need to make a manual entry in the Web Tier $TNS_ADMIN/tnsnames.ora to reflect the change in the concurrent processing server. This entry takes the form FNDFS_<FAILOVER_SERVER_NAME>.<failover_server_name>. Thankfully, this does NOT necessitate downtime of the instance.</p><br /><p align="justify"></p><br /><p align="justify">Do post your comments/suggestions/ideas on the above 2 problems.</p><br /><p align="justify"></p>Praveenhttp://www.blogger.com/profile/09645880422225153776noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-64804981625474736012009-03-24T14:20:00.000-07:002009-03-24T16:17:43.595-07:00Issue while exporting /importing the oracle outlines from one database to other<div style="text-align: justify;"><span style="font-size:100%;"><span style="font-family:courier new;">On of the DBA complained that he had created 25 outlines in the test instance while tuning the bad sql's. Now he wanted to move the outlines to production. </span></span><br /><span style="font-size:100%;"><span style="font-family:courier new;">One of the method to achieve this is to export the tables from the outl schema of the source (DEV) to target(PROD)</span></span><br /><span style="font-size:100%;"><span style="font-family:courier new;">Both the export and import utilities executed without any issues. </span></span><br /></div><span style="font-size:100%;"><br /><span style="font-family:courier new;">25 rows were exported from DEV and then imported to source(PROD). </span><br /><br /><span style="font-family:courier new;">But when we count the dba_outlines table it showed 21 rows , 4 outlines were missing. </span><br /><br /><br /><span style="font-family:courier new;">Below are the details</span><br /><br /><span style="font-family:courier new;">--------------------EXPORT COMMAND on DEV-------------------</span><br /><br /><br /><br /><br /><span style="font-family:courier new;"> exp / file=/tmp/outl2.dmp log=/tmp/outl2.log CONSTRAINTS=n TRIGGERS=n tables=outln.ol\$,outln.ol\$hints,outln.ol\$nodes grants=n</span><br /><br /><span style="font-family:courier new;">Export: Release 10.2.0.3.0 - Production on Mon Mar 23 18:26:03 2009</span><br /><br /><span style="font-family:courier new;"></span><br /><br /><span style="font-family:courier new;">About to export specified tables via Conventional Path ...</span><br /><span style="font-family:courier new;">Current user changed to OUTLN</span><br /><span style="font-family:courier new;">. . exporting table OL$ 25 rows exported</span><br /><span style="font-family:courier new;">. . exporting table OL$HINTS 488 rows exported</span><br /><span style="font-family:courier new;">. . exporting table OL$NODES 733 rows exported</span><br /><span style="font-family:courier new;">Export terminated successfully without warnings.</span><br /><br /><br /><br /><br /><span style="font-family:courier new;">-------------------import COMMAND on PROD-------------------------</span><br /><br /><span style="font-family:courier new;">Import the outlines on the target</span><br /><br /><span style="font-family:courier new;">ibisdev-e2-zone02.east:PATCH4:/orahome $ imp / file=/tmp/outl2.dmp log=/tmp/outlBTCsingle.log CONSTRAINTS=n grants=n fromuser=outln touser=outln ignore=y commit=y</span><br /><br /><span style="font-family:courier new;">Import: Release 10.2.0.3.0 - Production on Mon Mar 23 18:28:26 2009</span><br /><br /><span style="font-family:courier new;"></span><br /><span style="font-family:courier new;">Export file created by EXPORT:V10.02.01 via conventional path</span><br /><span style="font-family:courier new;">import done in US7ASCII character set and AL16UTF16 NCHAR character set</span><br /><span style="font-family:courier new;">import server uses UTF8 character set (possible charset conversion)</span><br /><span style="font-family:courier new;">export client uses UTF8 character set (possible charset conversion)</span><br /><span style="font-family:courier new;">. importing OUTLN's objects into OUTLN</span><br /><span style="font-family:courier new;">. . importing table "OL$" 25 rows imported</span><br /><span style="font-family:courier new;">. . importing table "OL$HINTS" 488 rows imported</span><br /><span style="font-family:courier new;">. . importing table "OL$NODES" 733 rows imported</span><br /><span style="font-family:courier new;">Import terminated successfully without warnings.</span><br /><br /><br /><span style="font-family:courier new;">---- below sql shows that there are only 21 outline on PROD -----<br /><br /></span><span style="font-family:courier new;">login to database</span><br /><br /><span style="font-family:courier new;">sqlplus "/ as sysdba"</span><br /><br /><span style="font-family:courier new;">select count(*) from dba_outlines;</span><br /><br /><span style="font-family:courier new;">Count(*)</span><br /><span style="font-family:courier new;">------------------------------------------</span><br /><br /><span style="font-family:courier new;">21 </span><br /><br /><span style="font-family:courier new;">------------------------------------------</span><br /><br /><br /><br /><span style="font-family:courier new;">Below you can see a difference in the header hint count .</span><br /><br /><span style="font-family:courier new;">If there is a hint ol$ hint count is less than ol$hints then the import utility will first import the data and then sync both the tables. </span><br /><span style="font-family:courier new;">If the ol$ hint count is more than ol$hints then the data will be first imported and then deleted due to hintcount mismatch.<br /><br />In other words<br /><br /></span></span><span style="font-size:100%;"><span style="font-family:courier new;">You need to ensure that you use a similar SQL statement to swap the counts, because if the hint count and the number of hints do not match, </span><span style="font-family:courier new;">then one of the closing procedural steps in the import will<br />be to delete any plan which is internally inconsistent - i.e. where the actual </span><span style="font-family:courier new;">count doesn't match the recorded count.<br /><br /></span></span><span style="font-size:100%;"><br /><span style="font-family:courier new;">Only way to overcome this is to update the outln.ol$ hintcount to the value less than or equal to hintcount of outln.ol$hints</span><br /><br /><span style="font-family:courier new;">=================Below query on PROD shows that there are no hints mismatch between the tables==================</span><br /><br /><span style="font-family:courier new;">SQL> clear buffer</span><br /><span style="font-family:courier new;">buffer cleared</span><br /><span style="font-family:courier new;">SQL> 1 select a.OL_NAME,a.HINTCOUNT,count(b.OL_NAME)</span><br /><span style="font-family:courier new;"> 2 from outln.ol$ a,</span><br /><span style="font-family:courier new;"> 3 outln.ol$hints b</span><br /><span style="font-family:courier new;"> 4 where a.OL_NAME = b.OL_NAME</span><br /><span style="font-family:courier new;"> 5 group by a.OL_NAME,a.HINTCOUNT</span><br /><span style="font-family:courier new;"> 6* having count(b.OL_NAME) <> a.HINTCOUNT SQL> SQL> SQL> SQL> SQL></span><br /><span style="font-family:courier new;">SP2-0734: unknown command beginning "6* having ..." - rest of line ignored.</span><br /><span style="font-family:courier new;">SQL></span><br /><span style="font-family:courier new;">SQL> 6 having count(b.OL_NAME) <> a.HINTCOUNT</span><br /><span style="font-family:courier new;">SQL> /</span><br /><br /><span style="font-family:courier new;">no rows selected</span><br /><br /><span style="font-family:courier new;">===============================Shows that there are only 21 outlines on PROD and has the hints in sync===========================================</span><br /><br /><span style="font-family:courier new;">SQL> l</span><br /><span style="font-family:courier new;"> 1 select a.OL_NAME,a.HINTCOUNT,count(b.OL_NAME)</span><br /><span style="font-family:courier new;"> 2 from outln.ol$ a,</span><br /><span style="font-family:courier new;"> 3 outln.ol$hints b</span><br /><span style="font-family:courier new;"> 4 where a.OL_NAME = b.OL_NAME</span><br /><span style="font-family:courier new;"> 5 group by a.OL_NAME,a.HINTCOUNT</span><br /><span style="font-family:courier new;"> 6* having count(b.OL_NAME) <> a.HINTCOUNT</span><br /><span style="font-family:courier new;">SQL> del 6</span><br /><span style="font-family:courier new;">SQL> /</span><br /><span style="font-family:courier new;">CR_6788803_FNDWFBG 22 22</span><br /><span style="font-family:courier new;">CR_6807075_CWP_05 9 9</span><br /><span style="font-family:courier new;">CWP_ACCT_INFO_01 27 27</span><br /><span style="font-family:courier new;">CR_6805769_PR_08 36 36</span><br /><span style="font-family:courier new;">CR_6807045_CWP_01_OLD 17 17</span><br /><span style="font-family:courier new;">CR_6805769_PR_02 17 17</span><br /><span style="font-family:courier new;">CR_6788792_ARBARL 22 22</span><br /><span style="font-family:courier new;">CR_6805769_PR_03 12 12</span><br /><span style="font-family:courier new;">CR_6805769_PR_04 17 17</span><br /><span style="font-family:courier new;">CR_6805769_PR_10 20 20</span><br /><span style="font-family:courier new;">CR_6789052_FNDWFBG 22 22</span><br /><span style="font-family:courier new;">CR_6794612_CWP_04 12 12</span><br /><span style="font-family:courier new;">CR_6805769_PR_12 18 18</span><br /><span style="font-family:courier new;">CR_6807240_AMSRFSEG 18 18</span><br /><span style="font-family:courier new;">CR_6794623_CWP_07 12 12</span><br /><span style="font-family:courier new;">CR_6797878_ITA_SETUP 25 25</span><br /><span style="font-family:courier new;">CR_6805769_PR_06 12 12</span><br /><span style="font-family:courier new;">CR_6807068_CWP_03 29 29</span><br /><span style="font-family:courier new;">CR_6805769_PRICE_REPORT 17 17</span><br /><span style="font-family:courier new;">CR_6805769_PR_07 12 12</span><br /><span style="font-family:courier new;">CR_6809701_OE_EBFF 53 53</span><br /><br /><span style="font-family:courier new;">21 rows selected.</span><br /><br /><br /><br /><br /><br /><span style="font-family:courier new;">-----------------------------------COMMAND shows thate outlines that have hintcount difference on DEV---------------------------------------------</span><br /><br /><span style="font-family:courier new;">SQL> select a.OL_NAME,a.HINTCOUNT,count(b.OL_NAME)</span><br /><span style="font-family:courier new;"> from outln.ol$ a,</span><br /><span style="font-family:courier new;"> outln.ol$hints b</span><br /><span style="font-family:courier new;"> where a.OL_NAME = b.OL_NAME</span><br /><span style="font-family:courier new;"> group by a.OL_NAME,a.HINTCOUNT 2 3 4 5</span><br /><span style="font-family:courier new;"> 6 having count(b.OL_NAME) <> a.HINTCOUNT</span><br /><span style="font-family:courier new;"> 7 ;</span><br /><br /><span style="font-family:courier new;">OL_NAME HINTCOUNT COUNT(B.OL_NAME)</span><br /><span style="font-family:courier new;">------------------------------ ---------- ----------------</span><br /><span style="font-family:courier new;">CR_6807045_CWP_01 18 17</span><br /><span style="font-family:courier new;">CR_6807062_CWP_02 23 22</span><br /><span style="font-family:courier new;">CR_6807090_CWP_09 24 14</span><br /><span style="font-family:courier new;">CR_6788803_FNDWFBG 22 24</span><br /><span style="font-family:courier new;">CR_6789052_FNDWFBG 22 24</span><br /><span style="font-family:courier new;">CR_6809701_OE_EBFF 53 54</span><br /><br /><span style="font-family:courier new;">6 rows selected.</span><br /><br /><br /><span style="font-family:courier new;">--------------------------------------------------------------------------------------------------------</span><br /><span style="font-family:courier new;">Still we can see only 4 outline from the above six are missing , it is because the ol$ hintcount is LESS than ol$hints in the . </span><br /><br /><br /><br /><br /><span style="font-family:courier new;">===================SOLUTION=========================</span><br /><br /><span style="font-family:courier new;">----------perform the below steps on source(DEVELOPMENT)-----------</span><br /><br /><br /><span style="font-family:courier new;">SQL>select hintcount<br /> from outln.ol$<br /> where<br /> OL_NAME='CR_6807045_CWP_01';</span><br /><br /><span style="font-family:courier new;"> HINTCOUNT</span><br /><span style="font-family:courier new;">----------</span><br /><span style="font-family:courier new;"> 18</span><br /><br /><span style="font-family:courier new;">SQL> update outln.ol$<br /> set hintcount=17<br /> where OL_NAME='CR_6807045_CWP_01';</span><br /><br /><span style="font-family:courier new;">1 row updated.</span><br /><br /><span style="font-family:courier new;">SQL> select hintcount from outln.ol$ where OL_NAME='CR_6807045_CWP_01';</span><br /><br /><span style="font-family:courier new;"> HINTCOUNT</span><br /><span style="font-family:courier new;">----------</span><br /><span style="font-family:courier new;"> 17</span><br /><br /><span style="font-family:courier new;">SQL> commit;</span><br /><br /><span style="font-family:courier new;">Commit complete.</span><br /><br /><span style="font-family:courier new;">SQL> !</span><br /><span style="font-family:courier new;">$</span><br /><br /><span style="font-family:courier new;">------------EXPORT COMMAND on DEV after making the hints on ol$ equal to ol$hints------------------------------------</span><br /><br /><br /><br /><span style="font-family:courier new;">$ exp / file=/tmp/outl2.dmp log=/tmp/outl2.log CONSTRAINTS=n TRIGGERS=n tables=outln.ol\$,outln.ol\$hints,outln.ol\$nodes grants=n</span><br /><br /><span style="font-family:courier new;">Export: Release 10.2.0.3.0 - Production on Mon Mar 23 18:26:03 2009</span><br /><br /><span style="font-family:courier new;">Copyright (c) 1982, 2005, Oracle. All rights reserved.</span><br /><br /><br /><span style="font-family:courier new;">Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production</span><br /><span style="font-family:courier new;">With the Partitioning, Real Application Clusters, Oracle Label Security, OLAP</span><br /><span style="font-family:courier new;">and Data Mining options</span><br /><span style="font-family:courier new;">Export done in UTF8 character set and AL16UTF16 NCHAR character set</span><br /><span style="font-family:courier new;">Note: grants on tables/views/sequences/roles will not be exported</span><br /><span style="font-family:courier new;">Note: constraints on tables will not be exported</span><br /><br /><span style="font-family:courier new;">About to export specified tables via Conventional Path ...</span><br /><span style="font-family:courier new;">Current user changed to OUTLN</span><br /><span style="font-family:courier new;">. . exporting table OL$ 25 rows exported</span><br /><span style="font-family:courier new;">. . exporting table OL$HINTS 488 rows exported</span><br /><span style="font-family:courier new;">. . exporting table OL$NODES 733 rows exported</span><br /><span style="font-family:courier new;">Export terminated successfully without warnings.</span><br /><br /><br /><span style="font-family:courier new;">---------------------import COMMAND on PROD-----------------------</span><br /><br /><br /><br /><span style="font-family:courier new;">:/orahome $ imp / file=/tmp/outl2.dmp log=/tmp/outlBTCsingle.log CONSTRAINTS=n grants=n fromuser=outln touser=outln ignore=y commit=y</span><br /><br /><span style="font-family:courier new;">Import: Release 10.2.0.3.0 - Production on Mon Mar 23 18:28:26 2009</span><br /><br /><span style="font-family:courier new;">Copyright (c) 1982, 2005, Oracle. All rights reserved.</span><br /><br /><br /><span style="font-family:courier new;">Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production</span><br /><span style="font-family:courier new;">With the Partitioning, Oracle Label Security, OLAP and Data Mining options</span><br /><br /><span style="font-family:courier new;">Export file created by EXPORT:V10.02.01 via conventional path</span><br /><span style="font-family:courier new;">import done in US7ASCII character set and AL16UTF16 NCHAR character set</span><br /><span style="font-family:courier new;">import server uses UTF8 character set (possible charset conversion)</span><br /><span style="font-family:courier new;">export client uses UTF8 character set (possible charset conversion)</span><br /><span style="font-family:courier new;">. importing OUTLN's objects into OUTLN</span><br /><span style="font-family:courier new;">. . importing table "OL$" 25 rows imported</span><br /><span style="font-family:courier new;">. . importing table "OL$HINTS" 488 rows imported</span><br /><span style="font-family:courier new;">. . importing table "OL$NODES" 733 rows imported</span><br /><span style="font-family:courier new;">Import terminated successfully without warnings.</span><br /><br /><br /><br /><span style="font-family:courier new;">--------------------------VALIDATING THE FIX ---------------------</span><br /><br /><span style="font-family:courier new;">:/orahome $</span><br /><span style="font-family:courier new;">me $ sqlplus</span><br /><br /><span style="font-family:courier new;">SQL*Plus: Release 10.2.0.3.0 - Production on Mon Mar 23 18:28:40 2009</span><br /><br /><span style="font-family:courier new;">Copyright (c) 1982, 2006, Oracle. All Rights Reserved.</span><br /><br /><span style="font-family:courier new;">Enter user-name: / as sysdba</span><br /><br /><span style="font-family:courier new;">Connected to:</span><br /><span style="font-family:courier new;">Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production</span><br /><span style="font-family:courier new;">With the Partitioning, Oracle Label Security, OLAP and Data Mining options</span><br /><br /><span style="font-family:courier new;">SQL> select count(*) from dba_outlines;</span><br /><br /><span style="font-family:courier new;"> COUNT(*)</span><br /><span style="font-family:courier new;">----------</span><br /><span style="font-family:courier new;"> 22</span><br /><br /><br /><span style="font-family:courier new;">This shows that this time import has imported 22 outline (21 + the one which was fixed)</span><br /><br /><span style="font-family:courier new;">You may have to perform the workaround on all the outlines that have a hints mismatch (ol$ hintcount > ol$hints hintcount)</span><br /><br /><br /><span style="font-family:courier new;">About EXPORT and IMPORT functionality with outline as an example</span><br /><br /><br /><span style="font-family:courier new;">1) check - select * from EXPACT$ where owner = 'OUTLN'; - Import runs this to cleanup</span><br /><br /><span style="font-family:courier new;">Some of these rows are cleared out at later point by the packages called in order to ensure the internal consistency of the metadata.</span><br /><br /><span style="font-family:courier new;">The packages called are outline.drop_collision, outline.drop_unrefd_hints, outline.drop_extras. These packages are called as an Import/Export </span><span style="font-family:courier new;">post table action and the main purpose of this procedure is to clean up after an import. The drop of outlines may be because they are simply </span><span style="font-family:courier new;">not required in the target database to obtain plan stability. The definitions for all of these procedures can be found in dbmsol.sql. Taking </span><br /><span style="font-family:courier new;">a look at the usage notes, there would appear to be some inconsistency which gets cleared up by these functions during export/import. This </span><span style="font-family:courier new;">could explain the missing rows.</span><br /><br /><br /><span style="font-family:courier new;">The outln$ table has a 'hintcount' column.</span><br /><br /><span style="font-family:courier new;">You need to ensure that you use a similar SQL statement to swap the counts, because if the hint count and the number of hints do not match, </span><span style="font-family:courier new;">then one of the closing procedural steps in the import will<br />be to delete any plan which is internally inconsistent - i.e. where the actual </span><span style="font-family:courier new;">count doesn't match the recorded count.</span><br /><br /><br /><span style="font-family:courier new;">You might try establishing a db_link between the two databases and thendo an update using a slect from the other table. This would bypass </span><span style="font-family:courier new;">the export/import actions that are deleting your new outlines even as itadds them. Another possibility if db_links aren't workable is to </span><span style="font-family:courier new;">import into a different user then use the update using a select from that users tables.<br /><br />Thanks, Sandarsh<br /><br /><br /></span><br /></span>sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-33536877498576835272008-07-21T23:53:00.000-07:002008-07-21T23:54:53.384-07:00Version of mod_security with EBS 11.5.10.2Though it was a bit tough to find out the version of Mod_security that is shipped with E-Business Suite 11.5.10.2, I finally managed to do it, thanks to Metalink Fora!<br /><br />The version that comes with eBS 11.5.10.2 is 1.8.4. Below is how you find out the version of mod_security shipped with your version of eBS.<br /><br /><span style="font-style: italic;font-size:100%;" ><span style="font-family: courier new;">$ strings $IAS_ORACLE_HOME/Apache/Apache/libexec/mod_security.so | grep mod_security/</span></span>Praveenhttp://www.blogger.com/profile/09645880422225153776noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-31808203582698584922008-07-02T23:06:00.000-07:002008-07-03T00:10:45.516-07:00Using GLOGIN.SQL<div align="justify"><span style="color:#ffcccc;">Many a time, DBAs and Developers tend to run scripts, accidentally, in instances that they do not actually intend to. In extreme cases, this might result in disastrous consequences, sometimes even leading to recovering/restoring the database from a backup.<br /><br />This mistake can easily be avoided if the sql prompt displays the username and/or the SID in lieu of just "SQL>". This can be achieved using a variety of methods.<br /><br />The easiest method (according to me) is detailed below.<br /><br /></span></div><p align="justify"><span style="color:#ffcccc;">Whenever sqlplus is invoked, 2 files are executed: <strong>glogin.sql</strong> and <strong>login.sql</strong> (in the order mentioned). These 2 files are located under <strong>$ORACLE_HOME/sqlplus/admin</strong>.</span></p><p align="justify"><span style="color:#ffcccc;">Modify the file glogin.sql and add the below line:</span></p><p align="justify"><strong><strong><strong><span style="font-family:courier new;color:#ffcccc;"><em>set sqlprompt "</em></span></strong><a href="mailto:_user"><strong><span style="font-family:courier new;color:#ffcccc;"><em>_user'@'_connect_identifier</em></span></strong></a><strong><span style="font-family:courier new;color:#ffcccc;"><em> > "</em></span></strong></strong></strong></p><p align="justify"><span style="color:#ffcccc;">The net result of this is that the sqlprompt will appear as below whenever you login to sqlplus:</span></p><p align="justify"><a href="mailto:system@ORCL"><span style="color:#ffcccc;">system@ORCL</span></a><span style="color:#ffcccc;">> </span></p><p align="justify"><span style="color:#ffcccc;">where system is the username and ORCL is the SID.</span></p><p align="justify"><span style="color:#ffcccc;"><strong><u>Note:</u></strong> One drawback of this method, if it may be called so, is that whenever one logs in to sqlplus using <strong>/nolog</strong> option, only the </span><a href="mailto:"><span style="color:#ffcccc;">'@'</span></a><span style="color:#ffcccc;"> character is displayed as the connection to the database is yet to be established. As soon as the connection is established, the username and SID are again populated in the sqlprompt. Incidentally, this is a new feature in 10g, wherein the glogin.sql and login.sql files are executed after the connect command.</span></p>Praveenhttp://www.blogger.com/profile/09645880422225153776noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-78632240367165628632008-03-12T09:44:00.000-07:002008-03-12T09:45:34.387-07:00Table FragmentationTable Fragmentation<br /><br />Found this good note on net:-<br />When rows are not stored contiguously, or if rows are split onto more than one block, performance decreases because these rows require additional block accesses.<br /><br />Note that table fragmentation is different from file fragmentation. When a lot of DML operations are applied on a table, the table will become fragmented because DML does not release free space from the table below the HWM.<br /><br />HWM is an indicator of USED BLOCKS in the database. Blocks below the high water mark (used blocks) have at least once contained data. This data might have been deleted. Since Oracle knows that blocks beyond the high water mark don't have data, it only reads blocks up to the high water mark when doing a full table scan.<br /><br />DDL statement always resets the HWM.<br /><br />Table size (with fragmentation)<br /><br />SQL> select table_name,round((blocks*8),2)||'kb' "size"<br />2 from user_tables<br />3 where table_name = 'BIG1';<br /><br />TABLE_NAME size<br />------------------------------ ------------------------------------------<br />BIG1 72952kb<br /><br />Actual data in table:<br /><br />SQL> select table_name,round((num_rows*avg_row_len/1024),2)||'kb' "size"<br />2 from user_tables<br />3 where table_name = 'BIG1';<br /><br />TABLE_NAME size<br />------------------------------ ------------------------------------------<br />BIG1 30604.2kb<br /><br />Note = 72952 - 30604 = 42348 Kb is wasted space in table<br /><br />The difference between two values is 60% and Pctfree 10% (default) - so, the table has 50% extra space which is wasted because there is no data.<br /><br />How to reset HWM / remove fragemenation?<br /><br />For that we need to reorganize the fragmented table.<br /><br />We have four options to reorganize fragmented tables:<br /><br />1. alter table ... move + rebuild indexes<br />2. export / truncate / import<br />3. create table as select ( CTAS)<br />4. dbms_redefinitionanilhttp://www.blogger.com/profile/01627236671585448862noreply@blogger.com1tag:blogger.com,1999:blog-3018196146296278892.post-42013066823767404742008-01-09T10:00:00.000-08:002008-01-09T10:13:24.505-08:00GSD (Global Syncorinization Demone is a dummy service after 10.1 .<br />This is because iOracle does not want to support any other clusters other that CRS.<br /><br />But you can still find GSD running<br /><br />Eg:<br /><br />Creating VIP application resource on (0) nodes.<br />Creating GSD application resource on (0) nodes.<br />Creating ONS application resource on (0) nodes.<br /><br /><br />Basically GSD is simply a dummy service . gsdctl.sh will call lsnodes in $CRS_HOME/bin.<br /><br />lsnodes is obselete in 10.2 all because of GSD. in 10.2 we use olsnode<br /><br />eg:<br /><br />olsnodes -n nodename<br /><br /><br />but still you can find lsnodes in $CRS_HOME/bin. this is there just to show GSD service is UP.<br /><br />lsnodes -n nodename will throw a syntak error ,<br /><br /><br />Same Script:<br /><br />####gsdctl.sh<br /><br />if olsnodes = o<br /><br />then<br />......<br />......<br />...<br /><br />return 0<br />else<br />return 0<br /><br />endif;<br /><br /><br />The If condition will never be true since lsnodes has a syntak error . So the piece of code that executes in gsdctl.sh is just<br /><br />return(0) from the else condition.<br /><br /><br />To check this<br /><br />mv gsdct gsdct.old<br />touch gsdctl<br /><br />srvctl start nodeapps -n <nodename><br /><br /><br /><br />Still your cluster will function normal.<br /><br /><br />Thanks,<br />Sandarshsandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-38549448295347383702008-01-06T00:37:00.000-08:002008-01-06T00:38:32.245-08:00Live session tracingLive session tracing<br /><br />If you have identified a particular session from a concurrent request or a forms user, you can enable trace while the session is active. To do so, you must first have the spid (LOCAL=NO) process for this sid.<br /><br />vi process.sql<br />column a.program format a40<br />select b.sid, b.serial#, a.spid, a.program from v$process a , v$session b<br />where a.addr = b.paddr and b.sid = &sid<br />/<br /><br />SQL> @process<br />Enter value for sid: 919<br /><br /> SID SERIAL# SPID PROGRAM<br />---------- ---------- ------------ ------------------------------------------------<br /> 919 6335 15191 oracle@sun9999 (TNS V1-V3)<br /><br />Make sure you’re running with the environment for oracle user – can’t run the oradebug statement from applmgr environment. <br />SQL> oradebug setospid 15191<br />Oracle pid: 152, Unix process pid: 15191, image: oracle@sun9999 (TNS V1-V3)<br />SQL> oradebug unlimit<br />Statement processed.<br />SQL> oradebug event 10046 trace name context forever, level 12<br />Statement processed.<br /><br />When you are finished tracing…<br /><br />SQL> oradebug setospid 15191 -- may not need to execute setospid again<br />Oracle pid: 152, Unix process pid: 15191, image: oracle@sun9999 (TNS V1-V3)<br />SQL> oradebug event 10046 trace name context off<br />Statement processed.<br /><br />Your trace file will contain the spid in the string.anilhttp://www.blogger.com/profile/01627236671585448862noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-57741022864875403252008-01-05T14:22:00.000-08:002008-01-05T14:30:25.192-08:00Script to Find Which Manager is DownGuys , this script was developed for creating UDM's for one of our customer.<br /><br />For creating UDM's , we can use select or Function . Nothing else.<br /><br />To develop this script I took about 10 days , really hard. But got one good approach to do this. The idea is<br /><br />Go to SYSADMIN>Concurrent manager><br />Enable Trace with Bind and then click on Administer.<br /><br />If you properly analyze the trace you get very good inputs to develop scripts based on your requirement.<br /><br />declare a number;<br /> b number;<br /> c varchar2(100); <br />d number;<br /> l_desc varchar2(100);<br /> cursor cur is select CONCURRENT_QUEUE_id from FND_CONCURRENT_QUEUES_VL where ENABLED_FLAG='Y';<br /> begin for cur_rec in cur loop <br /> APPS.FND_CONCURRENT.GET_MANAGER_STATUS(0,cur_rec.concurrent_queue_id,a,b,c,d);<br /> if a <> b then <br /> select DESCRIPTION into l_desc from fnd_concurrent_queues_vl where CONCURRENT_QUEUE_ID = cur_rec.concurrent_queue_id;<br /> dbms_output.put_line(l_desc ' is down'); <br /> end if;<br /> /* dbms_output.put_line('queue id ' cur_rec.concurrent_queue_id); dbms_output.put_line('a 'a); dbms_output.put_line('b 'b); dbms_output.put_line('c 'c); dbms_output.put_line('d 'd); */ <br />end loop;<br />end; <br /><br />Four output lines are commented . If you really want to understand how his function works then uncomment them.<br /><br />Also make sure you set the dbmsoutput on .<br /><br /><br />Thanks,<br />Sandarshsandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-9366458952713022142007-11-16T18:49:00.000-08:002007-11-16T18:54:38.099-08:00CHECKLIST FOR validating UTL_FILE_DIR value and FND_FILE value<br />1 . Make sure the utl_file_dir should have multiple entries in single quote seperated by coma.<br />Correct Entry is:<br /><br />EXAMPLE:<br /><br />utl_file_dir='/app/D4CRP/d4crpcomn/temp','/orahome/product/D4CRP/10.2.0/appsutil/outbound/D4CRP_ibisdev-e1-zone08','/usr/tmp'<br /><br /><br />Wrong Entry:<br /><br />utl_file_dir=/app/D4CRP/d4crpcomn/temp,/orahome/product/D4CRP/10.2.0/appsutil/outbound/D4CRP_ibisdev-e1-zone08,/usr/tmp<br /><br /><br />2 . MAKE SURE:<br /><br /><br />First Value of utl_file_dir should be the value of APPLTMP and APPLPTMP<br /><br />EG:<br />utl_file_dir='/app/D4CRP/d4crpcomn/temp','/orahome/product/D4CRP/10.2.0/appsutil/outbound/D4CRP_ibisdev-e1-zone08','/usr/tmp'<br />APPLTMP=/app/D4CRP/d4crpcomn/temp<br />APPLPTMP=/app/D4CRP/d4crpcomn/temp<br /><br /><br />3) Steps To Validate at the DB level:<br /><br />login to oracle user<br />sqlplus “/ as sysdba”<br />select value from v$parameter2 where name like '%utl%';<br /><br />Correnct Output Should be :<br /><br />VALUE<br />--------------------------------------------------------------------------------<br />/app/D4CRP/d4crpcomn/temp<br />/orahome/product/D4CRP/10.2.0/appsutil/outbound/D4CRP_ibisdev-e1-zone08<br />/usr/tmp<br /><br /><br />Incorrect Value:<br /><br />VALUE<br />--------------------------------------------------------------------------------<br />/app/D4CRP/d4crpcomn/temp, /orahome/product/D4CRP/10.2.0/appsutil/outbound/D4CRP<br />_ibisdev-e1-zone08, /usr/tmp<br />Note :Correct the utlfile entry before you move to application.<br /><br />4 . Steps to validate at application level:<br /><br />sqlplus “apps/#####”<br /><br />exec FND_FILE.PUT_LINE(FND_FILE.LOG, 'THIS IS A TEST');<br /><br />Note : the above procedure should complete successfully if not then verify APPLTMP,APPLPTMP and utl_file_dir as specified from the step 1.<br />NOTE: If only APPLPTMP and APPLTMP value is wrong then you can change it to correct value and bounce the Managers. If UTL file entry is wrong then we need to correct it and bounce the whole instance(APPLICATION+DB)<br /><br />v$parameter2 is the view which holds many value for single parameter.<br /><br />For example<br /><br />select name from v$parameter where name like '%utl%';<br />Will return only one row , but same query will return more than one value when the view name is changed to v$parameter2.<br /><br />select count(*) from v$parameter2 where name like '%utl%' will return the number on entries in utl_file_dir parameter(utl_file_dir='/tmp','/$COMMON_TOP/tmp'; in this case the query will return 2.sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com1tag:blogger.com,1999:blog-3018196146296278892.post-60863747053596426912007-09-27T22:00:00.000-07:002011-01-12T05:48:08.063-08:00Script to check the status of running RMAN Backup and Recovery sessionsSELECT SID, SERIAL#, CONTEXT, SOFAR, TOTALWORK,ROUND(SOFAR/TOTALWORK*100,2) "%_COMPLETE"FROM V$SESSION_LONGOPSWHERE OPNAME LIKE 'RMAN%'AND OPNAME NOT LIKE '%aggregate%'AND TOTALWORK != 0AND SOFAR <> TOTALWORK;Sreedhar Reddyhttp://www.blogger.com/profile/09928201109338185780noreply@blogger.com2tag:blogger.com,1999:blog-3018196146296278892.post-9625774280170855392007-08-03T05:25:00.000-07:002007-08-03T05:53:10.298-07:00Releasing Space in ASM flash areaWhen we use a flash area all the dupliacte copies and backup files are stored in the FLASH AREA.<br /><br />Some files that are stored here are.<br /><br />1)All archieve log file.<br />2)Logfile member (duplicate copy)<br />3)Control file duplicate (not always)<br /> etc<br /><br />After you have backedup your archivelog files to tape ,we need to delete the same from the flash area.<br /><br />We issue the below command.(we are not using catalog)<br /><br />rman target /<br /><br />run<br />{<br />configure channel ch1 device type tape;<br />backup archivelog all;<br />}<br /><br />RMAN>exit;<br /><br /> source the ASM home<br /><br />asmcmd;<br />>cd flash<br /><br />Delete all the archivelogs which were backedup<br /><br />>exit;<br /><br />Now if you check the flash area size (usedmb and freemb) it will be the same even after deleting the old archivelogs. This shows that no space was released from FLASH<br /><br />this is because eventhough we deleted the file inside flash the entry is still present in the controlfile.<br /><br />Solution<br /><br />rman target /<br /><br />RMAN> crosscheck archivelog all;<br />.<br />.<br />.<br />RMAN>list expired;<br />RMAN>delete expired archivelog all;<br />RMAN> exit;<br /><br />now if we check the asm views you can see the increase in free MB in ASM FLASH<br /><br />crosscheck archivelog all; will validate the archivelog files in controlfile with there physical location and if not present then it will mark that archive log as expired. when you delete expired the archivelog entry is deleted from the controlfile thus releasing the space in ASM flash.<br /><br />Thanks,<br />Sandarsh.sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-24397476031464478132007-08-03T05:03:00.000-07:002007-08-03T05:25:06.756-07:00ORA-27211: Failed to load Media Management LibraryAfter Upgrading DB from 10.1.0.04 to 10.2.0.3 rman restore was failing.<br />We were trying to restore TEST from PROD which was recently upgraded to 10.2.0.3.<br />=============================================<br />We were receiving the below error when trying to run the rman duplicate command.<br />________________________________________________________________________________________________________________<br /><br />RMAN-00571: ===========================================================<br />RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============<br />RMAN-00571: ===========================================================<br />RMAN-03009: failure of allocate command on ch00 channel at 08/01/2007 04:47:57<br />RMAN-10035: exception raised in RPC:<br />ORA-19624: operation failed, retry possible<br />ORA-19554: error allocating device, device type: SBT_TAPE, device name:<br />ORA-27211: Failed to load Media Management Library<br />ORA-06512: at "SYS.X$DBMS_BACKUP_RESTORE", line 173<br />RMAN-10031: RPC Error: ORA-19624 occurred during call to DBMS_BACKUP_RESTORE.DEVICEALLOCATE<br /><br />RMAN> **end-of-file**<br />=============================================<br />CAUSE:<br />RMAN was not able to recognise the TAPE device.<br />Solution:<br />When we Install a TAPE there are certain libraryfiles which must be loaded or read by RMAN to recognize the tape device.<br />For example in windows if an utility is not installed properly then we get the error saying unable to locate the .dll etc.<br />The customer was using VERITAS NET backup which on instaling creates library files which must be available to RMAN to recognose the device.<br />These are the three libraries<br />libobk.sllibobk.sl64libobk.so<br />Sine RMAN is a ORACLE utility searches these libraries inside ORACLE_HOME/lib or lib32 based on version(32or64)<br />Create the below links so that rman can recognise the Tape device before starting backup or recovery<br /><a href="mailto:oracle@hposi00[prod">oracle@hposi00[prod</a>] > ls -l libobk*lrwxr-xr-x 1 root sys 34 Jul 29 21:55 libobk.sl -> /usr/openv/netbackup/bin/libobk.sllrwxr-xr-x 1 root sys 36 Jul 29 21:55 libobk.sl64 -> /usr/openv/netbackup/bin/libobk.sl64lrwxr-xr-x 1 root sys 34 Jul 29 21:56 libobk.so -> /usr/openv/netbackup/bin/libobk.so<a href="mailto:oracle@hposi00[prod">oracle@hposi00[prod</a>] > pwd/u01/app/oracle/102/lib<br />----------------------------------------------------------sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-1465992927921838802007-07-28T09:01:00.000-07:002007-07-28T09:27:58.415-07:00unable to Find archivelog XXXXProblem: Unable to find/lock the archivelog 'XXXX"<br /><br />Scenario:<br /> Archive log we manually backedup to tape and deleted from the source.<br /><br />We configured a catalog for that database and then gave the below command;<br /><br />rman target / catalog <a href="mailto:rmanrep/rmanrep@RMAN4">rmanrep/rmanrep@RMAN4</a><br />Recovery Manager: Release 9.2.0.3.0 - Production<br />Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.<br />connected to target database: RMAN4 (DBID=4109780682)connected to recovery catalog database<br />RMAN> backup format '/u01/app/oracle/sandy/proddb/1.arc' archivelog all<br /><br />Unable to identift/locg logfile '/u01/app/oracle/sandy/proddb/9.2.0/arch/REOPENPROD_1_42.arc'<br /><br /><br />This error occured as 42 was deleted before creating the catalog.<br /><br />the solution for this proble is<br /><br />rman target / catalog <a href="mailto:rmanrep/rmanrep@RMAN4">rmanrep/rmanrep@RMAN4</a><br />Recovery Manager: Release 9.2.0.3.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.connected to target database: RMAN4 (DBID=4109780682)connected to recovery catalog database<br /><br />RMAN> crosscheck archivelog all;<br /><br /><br />RMAN> backup format '/u01/app/oracle/sandy/proddb/1.arc' archivelog all<br /><br /><br />allocated channel: ORA_DISK_1channel ORA_DISK_1: sid=18 devtype=DISKchannel ORA_DISK_1: starting archive log backupsetchannel ORA_DISK_1: specifying archive log(s) in backup setinputarchive log thread=1 sequence=43 recid=3 stamp=629043047input archive log thread=1 sequence=44 recid=4 stamp=629047148input archive log thread=1 sequence=45 recid=5 stamp=629051293input archive log thread=1 sequence=46 recid=6 stamp=629055443input archive log thread=1 sequence=47 recid=7 stamp=629059581input archive log thread=1 sequence=48 recid=8 stamp=629063680input archive log thread=1 sequence=49 recid=9 stamp=629067845input archive log thread=1 sequence=50 recid=10 stamp=629071975input archive log thread=1 sequence=51 recid=11 stamp=629076089input archive log thread=1 sequence=52 recid=12 stamp=629080236input archive log thread=1 sequence=53 recid=13 stamp=629084368input archive log thread=1 sequence=54 recid=14 stamp=629088490input archive log thread=1 sequence=55 recid=15 stamp=629092638input archive log thread=1 sequence=56 recid=16 stamp=629096758input archive log thread=1 sequence=57 recid=17 stamp=629100873<br /><br /><br />The above command "crosscheck archivelog all;" will actually delete the archivelog entry from controlfile. Thus Catalog will not try backingup the archivelog which is not present(or deleted)sandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0tag:blogger.com,1999:blog-3018196146296278892.post-203624093791199782007-07-21T07:09:00.000-07:002007-07-21T07:24:47.404-07:00ORA-38856: cannot mark instance UNNAMED_INSTANCE_2 (redo thread 2) as enabledWhen you clone a Instance from a DB which is non rac but a clone of RAC<br /><br />Eg:<br /><br />PROD--RAC<br />DEV-Non Rac cloned from PROD<br /><br />No You want to clone DEV to TEST.<br /><br />After restoring the DB from the backup of DEV when you issue the below command<br /><br />SQL>Alter database open resetlogs;<br /><br />*ERROR at line 1:ORA-38856: cannot mark instance UNNAMED_INSTANCE_2 (redo thread 2) as enabled<br /><br /><br />This is because of the RAC component which is still valid in Source.<br /><br />Solution:<br /><br />1) Solution:-Edit the init<sid>.ora file and put the parameter “_no_recovery_through_resetlogs”.Startup mount the instance.SQL>startup mount.SQL>alter database open resetlogs;<br /><br /><br />2)On the Source (DEV)<br />sqlplus / as sysdba<br /><br />sql>dbms_registry.invalid("RAC");<br /><br />SQL>exit;<br /><br />Now take a backup of database and then clone TEST from this backup.<br /><br /><br /><br />Thanks,<br />Sandarshsandarshhttp://www.blogger.com/profile/08756009278398916826noreply@blogger.com0