Installing Oracle11 and Oracle12 on Debian Wheezy, Squeeze

Posted by kroshka on Thu 15 Jul 2010 at 11:55

The main goal is to get the Oracle installer to run so you can install Oracle successfully. This application has to run within X windows. We will use vnc for that, this is not necessary, but you may (often) find you have to install Oracle remotely. And using something like vnc sure beats spending time in a noisy server room.

Debian Lenny was used to write the initial guide. I have since migrated a few Oracle11 servers from Lenny to Squeeze and I did quite a number of fresh Oracle11 installs on squeeze and wheezy. There is a tiny problem with regards to the name of a package and a problem regarding vm/hugetlb_shm_group (see below note Tuning kernel parameters). This guide should work on Wheezy, Squeeze and Lenny without much difficulty.

I also did a number of fresh installs of Oracle12 on Wheezy and there is very little difference to the process. I will note the differences where applicable.

Getting Oracle11 or Oracle12 from the Oracle website

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

Normally you should find two zip files. Download and unzip them, in /opt for example. You should end up with a directory called database.

Making Debian a bit more compatible

We should install a few packages so that the Oracle installer will be able to do its thing:

Note: on Lenny use libmotif3
Note2: normally libstdc++6 is already present, but oracle stupidly insists on libstdc++5.
apt-get install gcc make binutils libmotif4 lesstif2 rpm libaio1 libdb4.6 libstdc++5

The following 2 steps will make the Debian environment look a bit like Red Hat so the installer will not complain. I am not sure if this is still necessary for Oracle11, but it's not affecting anything.

Create symlinks so the installer can find a few utilities it needs:

ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename

Create an rc.d symlink:

ln -s /etc /etc/rc.d

Oracle account and volumes

Create an account and group:

groupadd oinstall
groupadd dba
useradd -m -g oinstall -G dba -p passwd -s /bin/bash -d /home/oracle oracle
passwd oracle   <-- change password!

It's useful to have a few default volumes and/or directories in place, such as /u01 and /u02. /u01 is used to install Oracle and in my case I am not using it to store databases. In this case it's symlinked from /home, and I use /u02 to store databases and ideally should be a separate RAID volume, the same goes for /u03, etc. Anyways, you could choose whatever you prefer of course.

mkdir /home/u01
ln -s /home/u01 /
mkdir /u02/oradata   <-- assuming it's already mounted
chown -R oracle.oinstall /home/u01 /u02/
chmod -R 775 /home/u01 /u02/

Change ownership of the directory from where we will run the Oracle installer:

chown -R oracle.oinstall /opt/database

Tuning kernel parameters

Oracle11 expects a few kernel parameters to be changed from its default. Some are different, i.e. higher, than for Oracle10. The below is what I used on a system with 4 CPU cores and 32 GB RAM, your mileage may vary and I am not sure if this is very optimal, but it worked.

Edit /etc/sysctl.conf and add the following at the bottom:

kernel.sem = 250 32000 100 128
kernel.shmmax = 2147483648
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744

Please note: after migrating from Lenny to Squeeze I had to add the following to sysctl.conf in order to be able use HugePages. This is enabled by default in the Debian kernel and increases performance, but the oracle/dba group may not be allowed to use it. See this for a discussion about it, dba_group_gid is the GID number of the dba group.

vm/hugetlb_shm_group = dba_group_gid

Now you can make those changes live:

sysctl -p


Configure the Oracle account environment

Change a few settings in the /etc/security/limits.conf file:

*               soft    nproc   2047
*               hard    nproc   16384
*               soft    nofile  1024
*               hard    nofile  65536

Make sure session required pam_limits.so module for PAM is being used. i.e. Ensure that pam_limits.so is included in the following files and is NOT commented out:

/etc/pam.d/su
/etc/pam.d/login
/etc/pam.d/sshd

Edit /etc/profile and add the following:

if [ $USER = "oracle" ]; then
      if [ $SHELL = "/bin/ksh" ]; then
            ulimit -p 16384
            ulimit -n 65536
      else
            ulimit -u 16384 -n 65536
      fi
fi
The umask should be 022, this tends to be the system default so there is no need to set it. In case you do need to set it you can do so in /etc/profile or in /etc/login.defs (wheezy) or use pam_umask.

Edit /home/oracle/.profile and add (this will change slightly after install):

ORACLE_BASE=/u01/app/oracle
ORACLE_SID=instancename
export ORACLE_BASE ORACLE_SID
unset ORACLE_HOME
unset TNS_ADMIN

Setting up X and vnc to run the Oracle installer

Now we need to set up a minimal X environment (if it's not installed, which is not unusual for a server) in order to run the Oracle installer. I prefer to have no X environment on a server unless necessary and then I would like to keep it as minimal as possible.

Install the following packages, which include a dummy X server, xterm and a minimal window manager:

apt-get install xserver-xorg-video-dummy vnc4server x11-xserver-utils xterm wm2

As user oracle run vnc4server, then kill it and edit /home/oracle/.vnc/xstartup and add the following 2 lines to the bottom. This makes sure a window manager and terminal will be started without much problems:

x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
wm2 &

Running the Oracle installer

Now run vnc4server again as user oracle. Connect to this server from your own machine and run the Oracle installer within the terminal, which should be named runInstaller and can be found wherever you unzipped the Oracle11 zipfiles. The installation should be fairly self explanatory. The installer WILL complain about a few things not being the way it expects it to be. It will list them as fail. It is safe to ignore it and continue. Near the end the installer once again will complain about some compilation error, which you too can safely ignore.

The Oracle12 installer will instead tell you something like: [INS-13001] Environment does not meet minimum requirements. Just click yes to continue.
Note: [1] If you get more than one or two compilation errors it's possible tools such as dbca will not be installed. Please see the note at the bottom of this article on how to solve such compilation errors.

After the installer finished do some cleanup

Edit /home/oracle/.profile and edit the change you previously applied to become:

ORACLE_BASE=/u01/app/oracle
ORACLE_SID=instancename
ORATAB=/etc/oratab
export PATH=$PATH:/u01/app/oracle/product/11.2.0/dbhome_1/bin/
export ORACLE_BASE ORACLE_SID ORATAB
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
unset TNS_ADMIN

Init script

In order to automatically start and stop Oracle at (re)boot create /etc/init.d/oracle and add:

#!/bin/bash
#
# Run-level Startup script for the Oracle Instance and Listener
#
# chkconfig: 345 91 19
# description: Startup/Shutdown Oracle listener and instance

### BEGIN INIT INFO
# Provides:          oracle
# Required-Start:    $remote_fs $syslog $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Oracle database server
# Description:       Oracle database server
### END INIT INFO

ORACLE_HOME="/u01/app/oracle/product/11.2.0/dbhome_1"
ORACLE_OWNR="oracle"

# if the executables do not exist -- display error

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
        echo "Oracle startup: cannot start"
        exit 1
fi

# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display

case "$1" in
    start)
        # Oracle listener and instance startup
        echo -n "Starting Oracle: "
        su - $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
        su - $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
        touch /var/lock/oracle
        echo "OK"
        ;;
    stop)
        # Oracle listener and instance shutdown
        echo -n "Shutdown Oracle: "
        su - $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
        su - $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
        rm -f /var/lock/oracle
        echo "OK"
        ;;
    reload|restart)
        $0 stop
        $0 start
        ;;
    *)  
        echo "Usage: $0 start|stop|restart|reload"
        exit 1
esac
exit 0

Now make that live by running:

update-rc.d oracle defaults

You should now have a fresh Oracle11 installation. This was the easy part...

[1]Note: While installing Oracle you sometimes may stumble upon compilation errors. Even though those are not fatal it may mean tools such as dbca are not available. To fix these you will need to do a little detective work. It looks like this is especially the case on Debian releases newer than squeeze. Check the make log file, it will tell you exactly what it is trying to find:

/u01/app/oracle/product/11.2.0/dbhome_1/install/make.log
/u01/app/oracle/product/12.1.0/dbhome_1/install/make.log
For example:
/usr/bin/ld: cannot find /usr/lib/libpthread_nonshared.a
Assuming you have the right packages installed this normally means such files are in a slightly different location. Try to find it:
find /usr/lib -name libpthread_nonshared.a
In case of a 64 bits system it could be in /usr/lib/x86_64-linux-gnu/, create a symlink this way:
ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib/libpthread_nonshared.a
Note: It's possible the Oracle installer stupidly looks for some libraries in /lib64 and /usr/lib64 instead, and these directories do not exist in wheezy. In that case create these directories and the above command would look like this:
ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/libpthread_nonshared.a
In case of a 32 bits system:
ln -s /usr/lib/i386-linux-gnu/libpthread_nonshared.a /usr/lib/libpthread_nonshared.a
Then hit retry in the installer and repeat this for the other compilation errors. Common symlinks I had to create (replace x86_64 with i386 if using 32 bits system):
ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib/
ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib/
ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib/
ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib/
On wheezy:
ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/libpthread_nonshared.a
ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/
ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/
ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/

Another compilation error prevents EM from being built properly. Although this is not essential and you can run Oracle fine after continuing, many people, including me, would like to be able to use it. There is a simple, albeit not too obvious fix. Please see https://cn.forums.oracle.com/forums/thread.jspa?threadID=1091616 for a discussion. You will find an error such as this in make.log:

/usr/bin/ld: note: 'B_DestroyKeyObject' is defined in DSO /u01/app/oracle/product/11.2.0/dbhome_1/lib/libnnz11.so so try adding it to the linker command line
/u01/app/oracle/product/11.2.0/dbhome_1/lib/libnnz11.so: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
The log actually provides you with a hint on how to solve it. What you do is you run the make by hand, then wait for the error and run the last compilation with the necessary arguments added:
cd $ORACLE_HOME/sysman/lib
make -f ins_emagent.mk "agent"
When it errors copy paste the last command and add the following to the "-ln" arguments :
-lnmemso -lcore11 -lnnz11

While installing Oracle12 the above problem does not seem to occur, however you may find an error like this:

/usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1//lib//libclient12.a(kpue.o): undefined reference to symbol 'ons_subscriber_close'
/usr/bin/ld: note: 'ons_subscriber_close' is defined in DSO /u01/app/oracle/product/12.1.0/dbhome_1//lib/libons.so so try adding it to the linker command line
/u01/app/oracle/product/12.1.0/dbhome_1//lib/libons.so: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make: *** [/u01/app/oracle/product/12.1.0/dbhome_1//rdbms/lib/plshprof] Error 1
To solve do the following:
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk utilities ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1/
When it errors copy paste the last command and add the following to the "-ln" arguments:
-lons
Then click "continue", the error may appear again at a later stage during linking, the fix is the same. In my case it happened while linking plshprof and rman.

 

 


Posted by Anonymous (208.0.xx.xx) on Thu 15 Jul 2010 at 13:42

You might also try, instead of installing a dummy X server, using SSH to tunnel the X11 clients' connections to an X server on your workstation.

I find on a Linux workstation, in an X11 session, that using the -Y option to ssh command works flawlessly, since X11Forwarding is enabled by default on Debian OpenSSH server. On on Windows workstation, you can install and run Xming (or any of the commercial X11 servers for Windows like Exceed), then enable X11 tunneling in the PuTTY profile ( Connection -> SSH -> X11, and tick the Enable X11 forwarding box). Other SSH clients may have this capability as well.

After doing this, any X11 windows that are created by programs you run in that SSH session on the server will appear on your workstation's desktop as if they were being run locally.

[ Parent | Reply to this comment ]

Posted by simonw (84.45.xx.xx) on Fri 16 Jul 2010 at 20:47
[ View Weblogs ]
This is getting harder as time passes....

http://www.debian-administration.org/articles/430

Sorry if they want to switch my from Postgres or MySQL (why would they) they had better make life simpler not harder.

[ Parent | Reply to this comment ]

Posted by kroshka (216.156.xx.xx) on Fri 16 Jul 2010 at 21:16
[ View Weblogs ]
Debian is the perfect distribution to run an oracle database. Especially, but not only, because Debian is far superior for (remote) administration. Why oracle does not provide up to date and working deb packages is beyond me. It's not exactly rocket science and it works, as the various articles prove.

[ Parent | Reply to this comment ]

Posted by Anonymous (82.131.xx.xx) on Tue 20 Jul 2010 at 20:38
Debian is not supported because its not enterprise crap like Redhat. VERY fortunately I had to deal with oracle like 4 years ago never since then and I won't take any jobs in the future which has anything to do with oracle because this db is one of the worst ever created and its intended to be sysadmins WORST nightmare.
Lets just start with the simple fact that at an oracle installation something WILL fail. Then you have to restart the long time consuming process after you fixed it. What uses most of the default passwords? Oracle like 11 default one and most of them you dont even know what it's for or what middlewhare bull* where you can to login with it.

If you are DBA or Developer and you have postgres or mysql running on your system for gods sake don't recommend it to migrate to Oracle... Just don't!

I post my old howto in hope that maybe it will be help for someone:
----------------------------------------------------------------- ----------

Don't forget I wrote this back in 2006. Since then oracle may got worst.

-better if you start with a clean and new operating system ( at this time Fedora team almost done with the 6. version), but after FC5 you shouldn't worry about the version of the dependent packages, except libaoi(*)

-until the installation goes, separate that computer from the network if it's possible and turn off any firewall, especially if you planning to setup a cluster, get a cheap switch or crosslink and work on that segment

-don't try to install oracle for an old (slower than 1,2 Ghz) machine without 1Gb ram, it doesn't matter you run or not anything else on the oracle machine, you need that 1 Gb ram and this is the minimum

-xorg-x11-deprecated-libs

-libstdc++ linking if needed

-G++ for the compile of libaoi

Ok so after you added the accounts and did the specific kernel parameter setup:

cat >> /etc/security/limits.conf <<EOF oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 EOF

cat >> /etc/profile.local <<EOF if [ \$USER = "oracle" ]; then

if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022

fi EOF

Well I got trouble with this profil settings. And many people install oracle from the oracle account. I mean they login via GDM or KDM for the setup.

$ ./runInstaller -ignoreRequirements

If you planning to use oracle in cluster, you gonna need this. And libaio required for asm (you need to get the older one from external source and remove the original from the system), you can get dependency problems here :(

[ Parent | Reply to this comment ]

Posted by kroshka (216.156.xx.xx) on Tue 20 Jul 2010 at 22:19
[ View Weblogs ]
> Debian is not supported because its not enterprise crap like Redhat

Yes it is unfortunate because Redhat just isn't as powerful when it comes to (remote) administration. Not to mention that Debian stable is in fact very stable.

> Lets just start with the simple fact that at an oracle installation something WILL fail. Then you have to restart the long time consuming process after you fixed it.

I disagree. All the Oracle10 and Oracle11 installations I did on Debian had a few failures, all of which I could safely ignore. The worst failure (on a laptop) was a failure to compile the enterprise manager, dbconsole, dbca et al. Things would still work fine even in that case. Of course it'll be more of a pain to create a database without the dbca, but it works.

> What uses most of the default passwords?

As far as I can see the installer will prompt you for passwords so you're able to set your own before the installation has completed.

I do agree there is no point in most cases to change to oracle, mssql or whatever when you're using a setup with mysql or postgresql with satisfaction. Again the "enterprise" label that comes with things like oracle and mssql is a selling factor.

[ Parent | Reply to this comment ]

Posted by Anonymous (88.149.xx.xx) on Mon 19 Jul 2010 at 19:43
Two things I would add, for a novice like me:

1) Remeber to change /etc/oratab, "N" must be "Y" if you want your default database instance to start automatically;

2) Add 'su - $ORA_OWNR -c "$ORA_HOME/bin/emctl start dbconsole"' to /etc/init.d/oracle in the start section (and the equivalent in the stop section), to automatically start the web Enterprise Manager.

Thanks for the howto! :)

apprezzatamente,
Francesco P.

[ Parent | Reply to this comment ]

Posted by Anonymous (216.156.xx.xx) on Mon 19 Jul 2010 at 20:12
> Thanks for the howto!

You're welcome :-)
Those are helpful tips.

With regards to the dbconsole. With Oracle10 I got into the habit to have the dbconsole only running when needed. There is a bug that causes the dbconsole to start consuming 100% CPU if it's left to run for more than a few hours (or even right away). It's not such an issue on a 4 CPU machine, but still annoying. The non free patch of Oracle10 is supposed to solve that though (along with an annoying day light saving bug).

[ Parent | Reply to this comment ]

Posted by Anonymous (188.4.xx.xx) on Sun 23 Oct 2011 at 22:18
When starting/stopping the Enterprise Manager you will notice an error which says
"ulimit: 25: bad number"

In order to get rid of that, simply edit the file '$ORACLE_HOME/bin/emctl'
and change the first line from '#!/bin/sh -f' to '#!/bin/bash -f'

[ Parent | Reply to this comment ]

Posted by trakic (194.182.xx.xx) on Tue 20 Jul 2010 at 12:31
[ View Weblogs ]
I would also mention that you can also keep your db server free from X and VNC installations by using response files for a headless installations:

http://download.oracle.com/docs/cd/B10500_01/em.920/a96697/rsp.ht m

Br. Admir Trakic, Copenhague, Denmark

[ Parent | Reply to this comment ]

Posted by Anonymous (178.115.xx.xx) on Thu 29 Jul 2010 at 12:55
Why would you want to install something you have paid thousands and thousands of dollars for on an unsupported distro?

[ Parent | Reply to this comment ]

Posted by kroshka (63.249.xx.xx) on Thu 29 Jul 2010 at 18:14
[ View Weblogs ]
I don't know, perhaps because it is actually FREE for many uses. Besides that, said unsupported distro actually brings down your total cost of maintaining a server farm because of its stability, high quality and ease of maintenance. The slight nuisance of installing Oracle on Debian is a small price to pay (it's not rocket science as the above how to shows).

[ Parent | Reply to this comment ]

Posted by Anonymous (212.24.xx.xx) on Thu 29 Jul 2010 at 21:57
> said unsupported distro actually brings down your total cost
> of maintaining a server farm because of its stability, high
> quality and ease of maintenance

It's unsupported: you have to have a single problem once for less than a minute and any money saved gets wiped out. If you want to save money, use postgres!

Spending $$$$ on Oracle and then saving a hundred bucks on a RHEL license is, well, weird!

[ Parent | Reply to this comment ]

Posted by kroshka (216.156.xx.xx) on Fri 30 Jul 2010 at 00:08
[ View Weblogs ]
You're not getting the point at all.

For one the article was not meant to avoid paying a Redhat license (Redhat by the way can be had for free). Neither does Oracle cost any money for many purposes. The article was meant to describe how to install Oracle on Debian. Nothing more and nothing less.

A problem with Oracle on Redhat is the same problem with Oracle on Debian. The type of distribution you're using doesn't matter at all with regards to how Oracle works and the problems it may have. Oracle doesn't have any magical code that senses your distro and then automagically decides to suck (more).

If you want to use Oracle on Redhat by all means go for it, power to the people. If you want to use postgress, or mysql, then again by all means feel free. It would be my preferred choice too. You don't always have this choice either historically, technically or politically.

[ Parent | Reply to this comment ]

Posted by Anonymous (212.24.xx.xx) on Fri 30 Jul 2010 at 16:22
*sigh* I give up.

[ Parent | Reply to this comment ]

Posted by kroshka (216.156.xx.xx) on Fri 30 Jul 2010 at 20:42
[ View Weblogs ]
Thank you :-)

[ Parent | Reply to this comment ]

Posted by Anonymous (217.91.xx.xx) on Thu 12 Aug 2010 at 15:27
Disclaimer: I'm not the Anonymous from above.

"Unsupported" in the above comment does not mean that Oracle doesn't run on Debian or that it runs worse on Debian than on Redhat. It means that the combination of Oracle Datase ABC + Redhat XYZ has been certified, that you get support for it, from the vendor, from other suppliers or from consultant companies. If something breaks you're backed up with your support contract with guaranteed response times. I don't know Oracle that well, but I doubt that they offer support for any Debian version.

If you don't need all that and don't care about support contracts, ok. But then I have to wonder even more why you would pick Oracle over any other database (except DB2 that is).

[ Parent | Reply to this comment ]

Posted by kroshka (216.156.xx.xx) on Thu 12 Aug 2010 at 20:18
[ View Weblogs ]
I understand that supported means you can get the paid for support from Oracle cum sui (for what it's worth). I fail to see though why you can't get paid for support if Oracle runs on Debian. The actual problems you encounter are almost always distro agnostic (I mean it's the same OS!). The few distro specific problems are mostly trivialities, and you do have a problem if you lack the in house expertise to deal with that.

If the application for paid for support requires you to click the Redhat option on the webform, then so be it.

I can see though there may be a niche market to fill for a company doing Oracle consultancy/support on Debian. :-)

There can be many reasons why one picks one system in favour of another and many of them are not technical neither sensible, but historical or political. In a world where there are "enterprise" solutions such as exchange or lotus notes I find Oracle on Debian a rather sensible choice.

[ Parent | Reply to this comment ]

Posted by Anonymous (212.121.xx.xx) on Wed 1 Sep 2010 at 12:54
If you want to risk whether Oracle or your consultant will or will not support that's up to you, but I remember from my HP days that they were quite keen to just dump a customer's prob if it was an "unsupported configuration". "You got your network card in HPPB slot 3, ooooh, that's not supported." Etc.

I'm sure you will find independent consultants willing to help, but the vendor may get touchy with you.

[ Parent | Reply to this comment ]

Posted by mattford63 (130.88.xx.xx) on Tue 14 Sep 2010 at 12:31
It's possible to install without a GUI if you use the "silent" features of the Oracle installer. See here http://www.oracle-base.com/articles/misc/OuiSilentInstallations.p hp.

Running the GUI however is the easiest way by far to generate the response file - you'll need to do this at least once to get around the chicken and egg bootstrapping issue.. Subsequent installations can be made a tad easier.

[ Parent | Reply to this comment ]

Posted by alephnull (122.172.xx.xx) on Wed 2 Mar 2011 at 04:11
I wrote a response file by hand, rather than using the OUI. It didn't complete the post-install configuration. Rather than figuring out the problem, I just did the steps by hand. I've written them up at http://trac.klp.org.in/wiki/OracleAccess#Oracleondev.klp.org.in

[ Parent | Reply to this comment ]

Posted by Anonymous (220.244.xx.xx) on Mon 23 Jan 2012 at 10:39
would the above procedure work for XE 11g?

[ Parent | Reply to this comment ]

Posted by kroshka (63.80.xx.xx) on Tue 24 Jan 2012 at 01:29
[ View Weblogs ]
I am pretty sure it would. The substantial differences between XE and the enterprise editions I use is just using a smaller memory footprint, and support for 1 CPU only.

[ Parent | Reply to this comment ]

Posted by Anonymous (220.244.xx.xx) on Mon 2 Apr 2012 at 12:57
can you post a procedure for XE 11g, with explanation , where to type command and where to cut and paste ? catering for students and novices ?

[ Parent | Reply to this comment ]

Posted by kroshka (2001:0xx:0xx:0xxx:0xxx:0xxx:xx) on Mon 2 Apr 2012 at 20:16
[ View Weblogs ]
I could, but I think it would just be almost exactly the same line by line. Why not try this guide with XE 11g and let me know what problems you found, if any?

[ Parent | Reply to this comment ]

Posted by Anonymous (190.141.xx.xx) on Tue 28 Aug 2012 at 05:14
Hey guys:

I follow the how to and the installation was succesfull, but when i restart de Oracle as SU and with the command /etc/init.d/oracle restart i see and message that says the "listene support no services" and the web manager dont start.

Regards...

[ Parent | Reply to this comment ]

Posted by kroshka (2001:0xx:0xx:0xxx:0xxx:0xxx:xx) on Thu 30 Aug 2012 at 05:20
[ View Weblogs ]
It looks like the listener didn't register yet. Please see this thread for a possible solution: https://forums.oracle.com/forums/thread.jspa?threadID=862174

You may get it to work by running "alter system register" as user system in sqlplus.

[ Parent | Reply to this comment ]

Posted by Anonymous (62.72.xx.xx) on Tue 5 Mar 2013 at 12:45
Had to install libstdc++5 to solve the error "Error in invoking target 'install' of makefile ins_ctx.mk".

Many thanks for sharing this article !

[ Parent | Reply to this comment ]

Posted by kroshka (143.232.xx.xx) on Wed 8 May 2013 at 00:59
[ View Weblogs ]
Thanks, yes I added it as part of the apt-get install in the first part. It's kind of annoying the installer is a bit braindead with regards to the location and version of libraries.

[ Parent | Reply to this comment ]

Posted by Anonymous (195.46.xx.xx) on Mon 17 Jun 2013 at 18:02
Regarding the compilation error of emdctl, the instructions do not mention one important point.

Once the compilation error is fixed the 'emdctl' executable can be found in the current directory (i.e. lib), however running:

make -f ins_emagent.mk agent nmhs

does not actually (at least for me) result in having the file copied to the bin directory.

What I had to do is:
1. Apply compilation fix (as provided in the instructions).
2. Tell installer to retry (this results in running 'make -f ins_emagent.mk agent nmhs').
3. Once the installer proceeds run: make -f ins_emagent.mk relink_exe EXENAME=emdctl.

Without step 3, I have an empty 'emdctl' file in the 'bin' directory which results in e.g. 'emctl status agent' not working.

regards,
Juraj

[ Parent | Reply to this comment ]

Posted by Anonymous (195.46.xx.xx) on Tue 18 Jun 2013 at 18:32
One more piece of information.

If you turn on automatic memory management, the database does not start with error ORA-00845: MEMORY_TARGET not supported on this system. In most cases this is caused by inappropriate setting of MEMORY_TARGET and MEMORY_MAX_TARGET. With Wheezy I encountered a new issue.

Starting with Wheezy /dev/shm is a symlink to /run/shm. The symlink is not enough for Oracle, I had to replace it with a bind mount, i.e. I did:

rm /dev/shm (removes the symlink)
mount --bind /run/shm /dev/shm

After this Oracle starts up successfully (provided that the size of shm is large enough, set in /etc/default/tmpfs).

regards,
Juraj

PS: I was not the only one, see bug 694379 in Debian Bugzilla.

[ Parent | Reply to this comment ]

Posted by Anonymous (195.46.xx.xx) on Tue 18 Jun 2013 at 18:48
Read the bug report till the end just to find out that Debian has implemented a workaround for this issue. All one needs to do is to add (do not forget to set the size):

tmpfs /dev/shm tmpfs nosuid,nodev,size=40%,mode=1777 0 0

to the fstab. This will result in have shm mounted on /dev/shm with /run/shm being a symlink to /dev/shm.

[ Parent | Reply to this comment ]

Posted by kroshka (143.232.xx.xx) on Thu 20 Jun 2013 at 01:41
[ View Weblogs ]
Thanks for the helpful suggestions.

[ Parent | Reply to this comment ]

Posted by Harri (172.19.xx.xx) on Tue 27 Aug 2013 at 15:17
Instead of rerunning make and editing command lines it might be easier to add the missing libraries to ${ORACLE_BASE}/product/11.2.0/dbhome_1/lib/sysliblist . I had to add "-lnmemso -lcore11 -lnnz11 -lclntsh".

[ Parent | Reply to this comment ]

Sign In

Username:

Password:

[Register|Advanced]

 

Flattr

 

Current Poll

What do you use for configuration management?








( 69 votes ~ 0 comments )