源地址:http://www.telefonica.net/web2/joseyluis/
Running Oracle 9.2.0.4/9.2.0.7 on NetBSD/i386
For any question send a email to: joseyluis at gmail dot com
Page by Jose Luis Rodriguez Garcia
At the moment it is possible to create and use Oracle databases and these tools/servers:
Database Configuration Assistant (dbca)
Net Configuration Assistant (netca)
Oracle Enterprise Manager (OEM) Console in standalone mode (oemapp console)
Oracle Performance Manager
Oracle Listener (lsnrctl)
These are the tools servers that don't work at the moment:
Intelligent Agent (lsnrctl)
Version 1.2 27/11/2005
Guide for installing Oracle 9.0.4 on NetBSD/i386.
Installation of the 9.2.0.7 patch
Database creation
Graphical database creation
Manual database creation
Network configuration (OracleNet)
Graphical administration
Known issues
Screenshots
Logs : kdumps, etc..
Changes to the document
Guide for installing Oracle 9.0.4 on NetBSD/i386.
First, you need a NetBSD kernel with the last changes on the ipc stuff for Linux compatibility:
Current: After of 10 November of 2005. This version has all the required patches applied.
Othere releases: 3.x after 5 November of 2005, and current after 3 November 2005, you need to apply only this kernel patch: diff.linux-shm.6.
Other releases: 2.x, 3.x and current you need to apply these kernel patches: diff.linux-shm.6 and diff.semopm.
Using NetBSD 1.6.x is not possible, because the Linux Java doesn't work with this version: The installer and the graphical tools use java.
I have installed the next Suse packages:
pc-jose# pkg_info|grep -i suse
suse_base-9.1nb7 Linux compatibility package
suse_expat-9.1nb1 Linux compatibility package for expat binaries
suse_fontconfig-9.1 Linux compatibility package for fontconfig binaries
suse_freetype2-9.1 Linux compatibility package for FreeType2 library
suse_libjpeg-9.1nb1 Linux compatibility package for the JPEG library
suse_libpng-9.1nb1 Linux compatibility package for the PNG library
suse_libtiff-9.1nb1 Linux compatibility package for the TIFF library
suse_x11-9.1nb2 Linux compatibility package for X11 binaries
suse_gtk2-9.1nb3 Linux compatibility package for GTK2 binaries
suse_locale-9.1 Locale files for the Linux compatibility package
suse_glx-9.1 Linux compatibility package for the GL library
suse_compat-9.1 Linux compatibility package with old shared libraries
pc-jose#
Java 1.3 must be installed for use the Oracle Installer:
pc-jose# pkg_info|grep -i sun-jre13
sun-jre13-1.0.15nb2 Sun's Java(tm) Runtime Environment 1.3.1
pc-jose#
Download and uncompress the following rpms:
binutils-2.15.90.0.1.1-31.i586.rpm
coreutils-5.2.1-23.8.i586.rpm
cpp-3.3.3-41.i586.rpm
gcc-c++-3.3.3-41.i586.rpm
gcc_old-2.95.3-175.2.i586.rpm
glibc-devel-2.3.3-98.i586.rpm
grep-2.5.1-416.i586.rpm
libstdc++-devel-3.3.3-41.i586.rpm
make-3.80-184.i586.rpm
orarun-1.8-109.15.i586.rpm
For uncompress the rpms, I executed:
cd /emul/linux
rpm2pkg /path-to-rpm-file
Set default compiler for Linux gcc/c++ 2.95
bash$ cd /emul/linux/usr/bin
mv c++ c++.old
mv g++ g++.old
ln -s ../../opt/gcc295/bin/gcc gcc
ln -s ../../opt/gcc295/bin/c++ c++
ln -s ../../opt/gcc295/bin/gcc gcc
Create symbolic links for awk and sed:
cd /emul/linux/bin
ln -s /usr/bin/awk awk
ln -s /usr/bin/sed sed
Create the arch script
cd /emul/linux/bin
#!/emul/linux/bin/bash
cat > arch
echo i686
^D
chmod a+x arch
Download the software
Download the 3 CDs from:
http://www.oracle.com/technology/software/products/oracle9i/index.html
Choose Oracle 9i Database Release 2 Enterprise/Standard Edition for Linux. For download these CDs you have to register. It is free and easy to do.
Uncompress the 3 CDs:
gzcat ship_9204_linux_disk1.cpio | cpio -idmv
gzcat ship_9204_linux_disk2.cpio | cpio -idmv
gzcat ship_9204_linux_disk3.cpio | cpio -idmv
Mount procfs with the following options in the /etc/fstab file:
Add this line to vfstab:
/emul/linux/proc procfs rw,linux
Mount the procfs filesystem:
$ mount procfs
Create /proc/stat and /proc/swaps
I don't know that Oracle searchs for these files. May be that installation works without these files.
Copy these files to /proc: stat and swaps.
Create the Oracle account and groups:
It is needed a oracle user. I have chosen the linux bash as shell.
Two groups are needed: oinstall: owns the files for any installation of Oracle on the machine. By example: if there is a Oracle9i and Oracle 10g, and if it is created two users: oracle8 and oracle9 both users must have oinstall as primary group) and dba. The oinstall group must be the primary group (the one that appears as gid in /etc/passwd/etc.masterpasswd.
A optional third group: oper. It has restricted privileges and is useful for operators.
You can choose any name for the user and group accounts. I have chosen the default accounts: oracle, oinstall, dba and oper. These are the resulting /etc/passwd and /etc/group:
/etc/passwd:
oracle:*:101:100:Oracle administrator:/usr/oracle:/emul/linux/bin/bash
/etc/group:
oinstall:*:1000:oracle
dba:*:1001:oracle
oper:*:1002:oracle
Kernel options
I have used the following kernel options:
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SEMMNI=128 # number of semaphore identifiers
options SEMMNS=256 # number of semaphores in system
#options SEMUME=10 # max number of undo entries per process
#options