上周在自己的ubuntu环境里安装好了oracle 11g, 特此把安装过程纪录下来,留作备忘录。
事前准备:
- 系统更新sudo
sudo apt-get update
sudo apt-get upgrade
- 安装系统所需要的packagesudo
sudo su -
apt-get install build-essential
apt-get install libaio1
apt-get install libaio-dev
apt-get install unixODBC
apt-get install unixODBC-dev
apt-get install pdksh
apt-get install expat
apt-get install sysstat
apt-get install libelf-dev
apt-get install elfutils
apt-get install lsb-cxx
apt-get install ksh
apt-get install libmotif3
apt-get install alien
apt-get install libtool
apt-get install lsb-rpm
- 为避免linking ctx/lib/ins_ctx.mk的编译错误,下载libstdc++5_3.3.6-25ubuntu1_i386.deb,并进行安装。
- 为避免编译中link错误,执行下面命令
sudo ln -s /usr/bin/awk /bin/awk
sudo ln -s /usr/bin/rpm /bin/rpm
sudo ln -s /usr/bin/basename /bin/basename
sudo ln -s /usr/lib/i386-linux-gnu/libc_nonshared.a /usr/lib
sudo ln -s /usr/lib/i386-linux-gnu/libpthread_nonshared.a /usr/lib
sudo ln -s /usr/lib/i386-linux-gnu/libstdc++.so.5 /usr/lib
sudo ln -s /usr/lib/i386-linux-gnu/libstdc++.so.6 /usr/lib
sudo ln -s /lib/i386-linux-gnu/libgcc_s.so.1 /lib
- 修改系统参数
sudo su -
#backup
cp /etc/sysctl.conf /etc/sysctl.original
vi /etc/sysctl.conf, 添加以下内容
# Oracle 11gR2 entries
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=2097152
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586
kernel.shmmax=2147483648
Note: kernel.shmmax = max possible value, e.g. size of physical memory in bytes
#启动新的系统参数 Load new kernel parameters
sysctl -p
- 创建用户和组
sudo groupadd oinstall
sudo groupadd dba
sudo groupadd nobody
sudo usermod -g nobody nobody
sudo useradd -g oinstall -G dba -d /home/oracle -s /bin/bash oracle
sudo password oracle
mkdir /home/oracle
chown -R oracle:dba /home/oracle
- 修改/etc/security/limits.conf,添加以下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
- 创建oracle安装目录
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory
开始正式安装:
- 以上边创建的oracle 用户login
- 执行以下命令开始安装
export LANG=C
#在安装目录下
./runInstaller
- 安装过程中,可能会遇到以下的编译错误
Error in invoking target 'agent nmhs' of makefile
'/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk.'
See
'/u01/app/oraInventory/logs/installActions2012-03-11_06-59-43PM.log'
for details.
或者还有
Error in invoking target 'all_no_orcl' of makefile
'/u01/app/oracle/product/11.2.0/db_1/rdbms/lib/ins_rdbms.mk.'
See
'/u01/app/oraInventory/logs/installActions2012-03-11_06-59-43PM.log'
for details.
- 为解决上述编译错误,修改如下文件,然后再执行编译
sysman/lib/ins_emagent.mk:
变更前:
LDFLAGS=-Wl -o $@...
变更后:
LDFLAGS=-Wl,--copy-dt-needed-entries -o $@...
bin/genorasdksh:
变更前:
$LD SLD_RUNTIME -Wl $D_OPT $LD_OUT ...
变更后:
$LD SLD_RUNTIME -Wl,--no-as-needed $D_OPT $LD_OUT ...
srvm/lib/ins_srvm.mk:
变更前:
GETCRSHOME_LINKLINE=$(LINK) $(LDPATHFLAG)$(RDBMSLIB) $(CDEBUG) $(OPT) $(GETCRSHOME_OBJ1) -Wl
变更后:
GETCRSHOME_LINKLINE=$(LINK) $(LDPATHFLAG)$(RDBMSLIB) $(CDEBUG) $(OPT) $(GETCRSHOME_OBJ1) -Wl,--no-as-needed
network/lib/env_network.mk:
变更前:
TNSLSNR_LINKLINE=$(LINK) $(TNSLSNR_OFILES) -Wl $(LINKTTLIBS) ...
变更后:
TNSLSNR_LINKLINE=$(LINK) $(TNSLSNR_OFILES) -Wl,--no-as-needed $(LINKTTLIBS) ...
rdbms/lib/env_rdms.mk:
变更前:
ORACLE_LINKER=$(ADE_DEL_FILE_CMD) $(PURECMDS) gcc -Wl $(OLAPPRELINKOPTS) $(LDFLAGS) $(COMPSOBJS)
变更后:
ORACLE_LINKER=$(ADE_DEL_FILE_CMD) $(PURECMDS) gcc -Wl, --no-as-needed $(OLAPPRELINKOPTS) $(LDFLAGS) $(COMPSOBJS)
- 按照安装程序的提示,以root权限login,然后执行命令 /u01/app/oracle/product/11.2.0/db_1/root.sh
- 创建启动程序 vi /etc/init.d/oracledb, 加入以下内容
#!/bin/bash
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_OWNR=oracle
export PATH=$PATH:$ORACLE_HOME/bin
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
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: `basename $0` start|stop|restart|reload"
exit 1
esac
exit 0
参考资料
- http://www.pythian.com/news/13291/installing-oracle-11gr2-enterprise-edition-on-ubuntu-10-04-lucid-lynx/
- https://forums.oracle.com/forums/thread.jspa?threadID=1115155
- https://forums.oracle.com/forums/thread.jspa?threadID=2336240
- http://blog.arkzoyd.com/2011/11/oracle-database-11g-and-ubuntu-1110.html
分享到:
相关推荐
Oracle 11g 是一个功能强大的关系数据库管理系统,但是其在 Ubuntu 下的安装却存在一定的难度。以下是 Oracle 11g for ubuntu 安装教程的知识点总结: 安装前提条件 * Ubuntu 8.04 desktop (32 位) 操作系统 * ...
在Linux Ubuntu 32位系统上安装Oracle 11g是一项技术性较强的任务,涉及到操作系统配置、依赖安装、用户权限管理以及数据库实例的创建等多个环节。以下是对这一过程的详细说明: 1. **系统需求与准备**: - 操作...
在Linux环境下,你需要一个支持32位应用程序的Linux发行版,例如Ubuntu或Red Hat Enterprise Linux的32位版本。确保你的系统满足最低硬件需求,如足够的内存、处理器速度和磁盘空间。 安装过程分为几个步骤: 1. *...
在安装 Oracle 11g 之前,需要先安装 Ubuntu 8.04 LTS (Hardy Heron)。用户可以从 Ubuntu 官方网站下载安装镜像文件,并将其刻录到 CD 上,然后安装到任何一个喜欢的主机上。在安装系统的过程中,唯一的注意事项是,...
Oracle 11g 是一个企业级的关系型数据库管理系统,而 Ubuntu 8.04 LTS 是一个长期支持版本的 Linux 发行版,对于服务器环境特别适合。 首先,安装 Ubuntu 8.04 LTS。你需要下载 Ubuntu 的 ISO 映像文件,并将其刻录...
安装 Oracle 11g R2 在 SUSE 11 SP3 上需要准备安装环境、安装所需的 RPM 包、安装 Oracle 11g R2 和配置 Oracle 11g R2。按照以上步骤,我们可以成功地安装和配置 Oracle 11g R2 在 SUSE 11 SP3 上。
CentOS6.5安装Oracle11g时所需要的所有系统安装依赖包,包含以下rpm包 pdksh-5.2.14-37.el5_8.1.x86_64.rpm compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm elfutils-libelf-devel-0.152-1.el6.x86_64.rpm libaio-...
在Linux系统上安装Oracle 11g 64位最简客户端是一个相对复杂的过程,涉及到多个步骤和技术要点。本文将详细介绍这个过程,帮助你成功在Linux环境下配置Oracle客户端。 首先,确保你的Linux系统是64位的,因为Oracle...
在安装Oracle 11gR2数据库软件之前,配置`/dev/shm`分区是至关重要的一步,尤其是在Ubuntu 11.10 64位服务器上。`/dev/shm`是一个临时文件系统,模拟了传统的内存共享,提供了一个在Linux系统中进行进程间通信(IPC...
根据提供的文档信息,以下是在Ubuntu 8.04下安装Oracle 11g数据库的关键步骤与相关知识点: ### 一、准备阶段 #### Step 1: 安装Ubuntu 8.04 Hardy Heron - **简介**:Ubuntu 8.04 Hardy Heron是一款长期支持版本...
- 选择Linux 32-bit版本(如果您的Ubuntu系统是64位,则选择64-bit版本)。 3. **Android SDK**: 包含了开发Android应用所需的工具和库。 - 下载地址:[http://developer.android.com/sdk/index.html]...
标题“openjdk7 for ubuntu64bit”指出我们要讨论的是OpenJDK 7在Ubuntu 64位操作系统上的安装和使用。OpenJDK(Open Java Development Kit)是Java开发工具包的一个开源实现,它提供了Java运行环境(JRE)和Java...
在Ubuntu Linux 64位操作系统上安装JDK 7是一个必要的步骤,特别是对于那些需要进行Java开发或者运行Java应用的用户。以下是关于JDK 7在Ubuntu Linux 64位系统上的安装和使用详解。 首先,确保你的Ubuntu系统是64位...
例如,可以选择安装wine-1.1.33和xrdp,这些工具使得在Windows环境下通过远程桌面连接到Ubuntu系统成为可能。具体来说,wine工具可以让Ubuntu运行一些Windows应用程序,而xrdp则是一个远程桌面协议服务器,允许远程...
本篇文档名为《Android_Build_Environment_on_Ubuntu_12.04_64-bit_Installation_SOP.pdf》,是一份标准操作程序(SOP),专为在Ubuntu 12.04 64位系统上安装Android 5.0之前的编译环境而设计。此文档特别以MTK...
本文主要介绍如何在Acer主机上安装Ubuntu 14.04操作系统,并利用VirtualBox创建一个Windows XP的虚拟机环境。此外,还将涉及如何在Ubuntu下进行常用的应用操作。 #### 二、安装Ubuntu 14.04 ##### 1. 下载Ubuntu ...
亲测可用》》》》》》》》》》》》 Navicat 11.0.10 64bit for windows7 windows10 数据库支持:Mysql SQLSERVER postgresql SQLite Oracle