Install Oracle 11gR2 on Debian wheezy(转)

简介: Install Oracle 11gR2 on Debian wheezy 出处:http://gaiustech.wordpress.com/2013/06/26/howto-install-oracle-on-debian-wheezy/ Oracle 11gR2 on Debian ...

 

Install Oracle 11gR2 on Debian wheezy

出处:
http://gaiustech.wordpress.com/2013/06/26/howto-install-oracle-on-debian-wheezy/

Oracle 11gR2 on Debian still isn’t an officially supported configuration (10g XE was for a while), but it is perfectly do-able with a little cajoling. Here I am starting with a fresh installation of Debian 7.1 in a VirtualBox VM, with 1G memory and a 40G dynamically allocated virtual disk. I installed just the base desktop + system utilities options from the DVD image. Once this is done I take a snapshot of it, which I can quickly clone whenever I need a new VM.

The first thing I want to do is get it set up the way I like it, including patching to the latest Guest Additions. In a root terminal (Applications → Accessories → Root Terminal):
Add the following lines to the file /etc/sysctl.conf:

kernel.shmmax=1073741824
kernel.shmall=262143
 

And execute the following commands:
# apt-get remove virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11 gnome-shell
# apt-get install linux-headers-3.2.0-4-all
# apt-get autoremove
# eject
# cd /media/cdrom0
# sh VBoxLinuxAdditions.run
# reboot
 

After ejecting the distro ISO, insert the Guest Editions. This may take a while (esp. the autoremove).

After this the system will boot into the console, old-skool style. After logging in type startx to get the desktop (but no need if you just want to use the VM to run the DB server). It will be the less resource-guzzling Classic desktop only. I also disable screen locking and enable automatic login, since those are actually taken care of by the host machine (an MBP in this case):

Applications → System Tools → Preferences → System Settings → User Accounts → Automatic Login
Applications → System Tools → Preferences → System Settings → Brightness and Lock
Now I am ready to begin the actual Oracle installation, starting with the prereqs. Many of these will fail the Oracle installer precheck, e.g. it wants Make 3.8 whereas Wheezy comes with 3.81!

# apt-get install libaio-dev sysstat unixodbc-dev libelf-dev unzip g++ libstdc++6-4.7-dev libstdc++5

And create the users and groups necessary, and open up the display so this new user can see it:

# groupadd dba
# useradd -d /home/oracle -m -c "Oracle Database" -g dba -s `which bash` oracle
# mkdir /opt/oracle
# mkdir /opt/oraInventory
# mkdir /oradata
# chown oracle:dba /opt/oracle /opt/oraInventory /oradata
# xhost +
 

Next do some fakery to make it look like Red Hat/OEL (all these appear to be hard-coded paths in the Oracle tools):
# ln -s /usr/bin/basename /bin/basename
# ln -s /usr/bin/awk /bin/awk
# ln -s /usr/lib/i386-linux-gnu/libpthread_nonshared.a /usr/lib
# ln -s /usr/lib/i386-linux-gnu/libc_nonshared.a /usr/lib
# ln -s /lib/i386-linux-gnu/libgcc_s.so.1 /lib
# ln -s /usr/lib/i386-linux-gnu/libstdc++.so.6 /usr/lib
 

Go and fetch the software from OTN (11.2.0.1) or if you have access to Metalink, just grab patch 10404530 which will take you straight to 11.2.0.3. Unzip these into /home/oracle where it will create a database/ folder. In a Root Terminal, su - oracle and:

$ for f in *.zip ; do unzip $f; done
$ cd database/
$ export DISPLAY=:0.0
$ export ORACLE_BASE=/opt/oracle
$ export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.3
$ export PATH=$PATH:$ORACLE_HOME/bin
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/i386-linux-gnu:/bin/lib:/lib/i386-linux-gnu/:/usr/lib
$ ./runInstaller
 

Proceed through the installer, selecting the appropriate options for the installation you want (or just accept the defaults if you are not sure). I am using

ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/product/11.2.0.3
Datafiles in /oradata, inventory in /opt/oraInventory
Install software only, single instance, Enterprise Edition.
Skip all the prereq checks – they are there even tho’ the GUI installer doesn’t recognize them as such, the underlying scripts and the linker will. The installation will fail when relinking “agent nhms” due to a change in the behavior of the linker. The clue is in the log message:

/usr/bin/ld: note: 'B_DestroyKeyObject' is defined in DSO

/opt/oracle/product/11.2.0.3/lib/libnnz11.so so try adding it to the linker command line
 

We can fix that in the Makefile $ORACLE_HOME/sysman/lib/env_emagent.mk by replacing:


 NNMEFET_STACKLIBS_LINK=$(LDPATHFLAG)$(ORACLE_HOME)/$(LIBDIR)  $(LDPATHFLAG)$(PRODLIBHOME) $(LLIBNMEMSO) $(LLIBCORE) -Wl,-rpath,$(AGENTRPATH):$(JAVA_RTLINK_PATH) $(LIB_JVM_LINK) -Wl,--allow-shlib-undefined
 

With


 NNMEFET_STACKLIBS_LINK=$(LDPATHFLAG)$(ORACLE_HOME)/$(LIBDIR)  $(LDPATHFLAG)$(PRODLIBHOME) $(LLIBNMEMSO) $(LLIBCORE) -lnnz11 -Wl,-rpath,$(AGENTRPATH):$(JAVA_RTLINK_PATH) $(LIB_JVM_LINK) -Wl,--allow-shlib-undefined
 

And clicking retry. Now I can create a database with DBCA. There is one customization I make to the startup parameters to avoid a crash in the Oracle JVM (still known as Aurora internally!) while creating the data dictionary, set java_jit_enabled from TRUE to FALSE in the Advanced Parameters:

 

Congratulations, you now have a working Oracle installation on a halfway sane Linux distro! Of course this is all moot since 12c is out now; the same steps should apply, I will update when I have had a chance to try it.

Finally I install some software that I like, again in a Root Terminal (you can skip this step if you don’t plan to do any OCaml development!):

# apt-get install hardening-wrapper hardening-includes git ocaml-batteries-included ocaml-mode rlwrap gnome-screenshot strace valgrind
 

 

 

安装后的环境变量设置

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle
export ORACLE_SID=test
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin


 http://www.cnblogs.com/xzpp/p/3572307.html

相关文章
|
Oracle 安全 关系型数据库
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(一)
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(一)
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(一)
|
3月前
|
Oracle 关系型数据库 Linux
RHEL7.9系统下一键脚本安装Oracle 11gR2单机版本
RHEL7.9系统下一键脚本安装Oracle 11gR2单机版本
58 1
|
缓存 Oracle 关系型数据库
手把手教你在命令行(静默)部署 oracle 11gR2
手把手教你在命令行(静默)部署 oracle 11gR2
140 0
|
SQL Oracle 关系型数据库
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(三)
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(三)
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(三)
|
Oracle 关系型数据库 Linux
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(二)
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(二)
实战篇:Linux 安装 Oracle 11GR2 数据库保姆级教程(二)
|
Oracle 关系型数据库 Linux
10分钟!一键部署Oracle 11GR2单机
安装日志记录在/soft目录下:oracleAllSilent_*.log,在文末展示安装日志。
10分钟!一键部署Oracle 11GR2单机
|
存储 Oracle 关系型数据库
Oracle 11gR2 GI日常管理手册
Oracle 11gR2 GI日常管理手册 目 录1 文档简介 41.1 编写目的 41.2 适用范围 41.3 名词解释 41.4 格式约定 41.
1363 0
|
存储 Oracle 关系型数据库
Oracle 11gR2 GI基本安装手册
Oracle 11gR2 GI基本安装手册 目 录1 文档简介 31.1 编写目的 31.2 适用范围 31.3 名词解释 31.4 格式约定 31.
1201 0
|
存储 Oracle 关系型数据库
Oracle 11gR2 CRS资源配置手册
Oracle 11gR2 CRS资源配置手册 目 录1 文档简介 31.1 编写目的 31.2 适用范围 31.3 名词解释 31.4 格式约定 32 安装Oracle软件及创建数据库 42.
1270 0
|
存储 机器学习/深度学习 Oracle
Oracle 11gR2 ASM存储日常管理手册
Oracle 11gR2 ASM存储日常管理手册 目 录1 文档简介 31.1 编写目的 31.2 适用范围 31.3 名词解释 31.4 格式约定 42 配置多链路和LUN 42.
1063 0