Posted by John Paul van Helvoort on December 31, 2008
Probably the most easy way of getting command which are preformed in previous sessions is to use the “history” command / file.
To interactively use the same file you can use CTRL-R which will let you search the file from the command line and apply any found entry.
Here is how i use this, pres CTRL-R :
[mid101] xxx:oracle>
(reverse-i-search)`':
Now when trying to retrieve the last used export DISPLAY command, I can type in “ex” which will show the last command found from the history file:
(reverse-i-search)`ex': export DISPLAY=10.0.0.9:0.0
Hit ENTER and your DISPLAY is once again set .
Easy and Handy !!
Posted in Linux | Leave a Comment »
Posted by John Paul van Helvoort on December 30, 2008
After de-registering a failed midtier 10.1.2.3.0 installation(using deconfig.pl) from my Infrastructure.
I tried to install it again using the same instance name (mid101) as before.
Everything looks okay up to the part where the installer Launches the configuration assistant ‘OC4J Instance Configuration Assistant’.
Here this nasty error appears :

Initializing DCM..ERROR: Caught exception while initializing DCM.
oracle.ias.sysmgmt.exception.PersistenceException: Base Exception:
The instance, "mid101.xxx.com" already exists in the configuration repository. The instance must have a unique name.
Resolution:
Remove or destroy the instance or choose a different name then retry the operation.
at oracle.ias.sysmgmt.persistence.DBTopology.createPersistenceInstance(Unknown Source)
at oracle.ias.sysmgmt.persistence.PersistenceCluster.createPersistenceInstance(Unknown Source)
at oracle.ias.sysmgmt.task.FarmManager.joinFarm(Unknown Source)
at oracle.ias.sysmgmt.task.TaskMaster.initRepository(Unknown Source)
at oracle.ias.sysmgmt.task.TaskMaster.(Unknown Source)
at oracle.ias.sysmgmt.task.InstanceManager.sysInit(Unknown Source)
at oracle.ias.sysmgmt.task.InstanceManager.init(Unknown Source)
at oracle.j2ee.tools.deploy.Oc4jDeploy.doDeploy(Unknown Source)
at oracle.j2ee.tools.deploy.Oc4jDeploy.execute(Unknown Source)
at oracle.j2ee.tools.deploy.Oc4jDeploy.deploy(Unknown Source)
at oracle.j2ee.tools.deploy.Oc4jDeploy.main(Unknown Source)
After some searching i found the solution to this just by following these steps :
Set your ORACLE_HOME to the infrastructure home.
Then preform the follwing steps :
D:\oracle\product\101\idm\dcm\bin>dcmctl listInstances
1
Instance name: idm101.xxx.com
Cluster:
Hostname: oasserver.xxx.com
Oracle Home: D:\oracle\product\101\idm
2
Instance name: mid101.xxx.com
Cluster:
Hostname: oasserver.xxx.com
Oracle Home: D:\oracle\product\101\mid
Here you can see that the name i want to use again is still know in the infrastructure.
We need to first cleanup this registration before we can re-register with the same name.
D:\oracle\product\101\idm\dcm\bin>dcmctl destroyInstance -i mid101.xxx.com
D:\oracle\product\101\idm\dcm\bin>dcmctl listInstances
1
Instance name: idm101.xxx.com
Cluster:
Hostname: oasserver.xxx.com
Oracle Home: D:\oracle\product\101\idm
D:\oracle\product\101\idm\dcm\bin>
Now we can hit the retry button so the installation can complete.
This is how i turned my Configuration assistant “OC4J Instance Configuration Assistant” failed into
Configuration assistant “OC4J Instance Configuration Assistant” succeeded !
Posted in Application Server | Leave a Comment »
Posted by John Paul van Helvoort on December 30, 2008
By default de Oracle user has no priviledges to add cron jobs under SLES 10.
when trying to do so you will recieve an error which looks something close to this :
oracle@xxx:~> crontab -l
-bash: /usr/bin/crontab: Permission denied
The solution to this is to add the “trusted” group to the user oracle.
To so this , you can login as root and preform this command :
[]oracle@xxx:~> su
Password:
xxx:/ # usermod -G trusted oracle
xxx:/ # exit
[]oracle@xxx:~> crontab -l
-bash: /usr/bin/crontab: Permission denied
After have done so, you need to login with oracle again to let the changes work.
[]oracle@xxx:~> su - oracle
Password:
[]oracle@xxx:~> crontab -l
no crontab for oracle
You can now either use
[]oracle@xxx:~>crontab -e
(to add,remove or edit the oracle cron jobs)
Or use
[]oracle@xxx:~>crontab -l
(to simply list scheduled cron jobs foir the user oracle)
Posted in Linux | Leave a Comment »
Posted by John Paul van Helvoort on December 24, 2008
In some cases its handy to quickly be able to adjust your swap.
Here is a little trick i mostly use to do so.
First you can check your physical memory total :
grep MemTotal /proc/meminfo
To check your swap space total :
grep SwapTotal /proc/meminfo
So if you find yourself short in swap space , lets say for an Oracle installation.
You can safely expand your swap space like this
$>su - root
( You have to be root to be able to do this)
$>dd if=/dev/zero of=tmpswap bs=1k count=900000
( 900000 being 900 Megabytes )
$>chmod 600 tempswap
$>mkswap tempswap
$>swapon tempswap
Whenever you want to remove this extra swap space, use these commands :
$>su - root
$>swapoff tempswap
$>rm tempswap
Posted in Linux | Leave a Comment »
Posted by John Paul van Helvoort on December 24, 2008
After a successful installation of the OAS version 10.1.2.0.2 and patch it to 10.1.2.3 on my SuSE 10 SP2 server.
I noticed the reports was acting weirdly and the forms oc4j was constantly restarting.
The error which is thrown by the OC4J_BI_Forms process and looks like this ;
——–
08/12/18 09:29:16 Start process
——–
08/12/18 09:29:20 FormsServlet init():
configFileName: /u01/app/oracle/product/10.1.2/mid/forms/server/formsweb.cfg
testMode: false
08/12/18 09:29:20 Oracle Application Server Containers for J2EE 10g (10.1.2.3.0) initialized
08/12/18 09:29:37 ListenerServlet init()
08/12/18 09:29:46 java.lang.UnsatisfiedLinkError: /u01/app/oracle/product/10.1.2/mid/lib/librwu.so: /usr/X11R6/lib/libXm.so.2: undefined symbol: _Xsetlocale
08/12/18 09:29:46 at java.lang.ClassLoader$NativeLibrary.load(Native Method)
08/12/18 09:29:46 at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586)
08/12/18 09:29:46 at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1511)
08/12/18 09:29:46 at java.lang.Runtime.loadLibrary0(Runtime.java:788)
08/12/18 09:29:46 at java.lang.System.loadLibrary(System.java:834)
08/12/18 09:29:46 at oracle.reports.util.EnvironmentGlobal.<init>(EnvironmentGlobal.java:30)
08/12/18 09:29:46 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
08/12/18 09:29:46 at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
08/12/18 09:29:46 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
08/12/18 09:29:46 at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
08/12/18 09:29:46 at java.lang.Class.newInstance0(Class.java:308)
08/12/18 09:29:46 at java.lang.Class.newInstance(Class.java:261)
08/12/18 09:29:46 at oracle.reports.util.EnvironmentUtility.getEnvironment(EnvironmentUtility.java:75)
08/12/18 09:29:46 at oracle.reports.server.RWServer.startServer(RWServer.java:529)
08/12/18 09:29:46 at oracle.reports.server.RWServer.run(RWServer.java:292)
08/12/18 09:29:46 at java.lang.Thread.run(Thread.java:534)
After searching metalink i found note 566991.1 which describes this problem.
The solution to this can be found by requesting a special rpm from Novell.
The downside of it is that you have to startover for it to work its magic.
As it turnsout the problem will not solve when you post apply this package to the yet installed system.
As novell did not yet published this rpm to the public its hard to get a hold of it.
So here is a link to the rpm we used to fix the problem
RPM for x86 32-bit machines:
openmotif21-libs-2.1.30MLI4-143.2.PTF.378190.0.i586.rpm
If you use a 64bit operating system, you will have to take the hard way by requesting this at Novell yourself.
Posted in Application Server | Leave a Comment »