Linux下Oracle11gR2安装

Linux下Oracle11gR2安装

Linux环境配置

OS:Fedora 15
DB:Oracle 11gR2
将Oracle安装到home/oracle_11目录

配置过程:本文来自Oracle官方文档+网上资料

Oracle官方文档:http://www.oracle.com/pls/db112/homepage

1. 以root用户登录到Linux

2. 检查机器硬件要求

2.1内存要求

至少需要1GB的内存  
查看机器内存大小  
`# grep MemTotal /proc/meminfo`

2.2 swap空间要求

内存大小                 swap空间大小  
1 GB ~ 2 GB             内存大小*1.5  
2 GB ~ 16 GB            内存大小  
> 16 GB          16 GB  
查看swap空间大小  
`# grep SwapTotal /proc/meminfo`

2.3 空闲硬盘要求

/tmp目录需要1 GB的空闲空间  
查看/tmp目录的空闲空间  
# df -h /tmp
安装Oracle软件需要的硬盘空间  
Enterprise Edition   3.95(software files)+1.7(data files)
Standard Edition     3.88(software files)+1.5(data files)  
查看机器中每个磁盘的空闲空间  
# df -h 

3. 检查操作系统软件要求

Oracle官方文档中包含了多个Linux系统的要求,详细请参考官方文档

Fedora 15 (RHEL 5.x)的软件要求列表如下:

binutils-2.17.50.0.6  
compat-libstdc++-33-3.2.3  
elfutils-libelf-0.125  
elfutils-libelf-devel-0.125  
elfutils-libelf-devel-static-0.125  
gcc-4.1.2  
gcc-c++-4.1.2  
glibc-2.5-24  
glibc-common-2.5  
glibc-devel-2.5  
glibc-headers-2.5  
kernel-headers-2.6.18  
ksh-20060214  
libaio-0.3.106  
libaio-devel-0.3.106   
libgcc-4.1.2  
libgomp-4.1.2  
libstdc++-4.1.2   
libstdc++-devel-4.1.2  
make-3.81  
numactl-devel-0.9.8.i386  
sysstat-7.0.2  
查看系统是否安装了该软件包  
# rpm -q package_name  

4. 创建安装Oracle需要的系统组和用户

创建Oracle Inventory 组  
# groupadd oinstall  
创建OSDBA 组  
# groupadd dba  
创建Oracle软件创建者  
# useradd -g oinstall -G dba oracle  
修改oracle用户的密码  
# passwd oracle  

5. 配置系统内核参数值

编辑/etc/sysctl.conf文件  
vim /etc/sysctl.conf  
在打开的文件底部添加下面内容  
fs.aio-max-nr = 1048576  
fs.file-max = 6815744  
kernel.shmall = 2097152  
kernel.shmmax = 536870912  
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  
改变当前系统内核参数值(让/etc/sysctl.conf立即生效)  
# sysctl -p  

6. 检查Oracle安装用户(oracle)资源限制

修改/etc/security/limits.conf文件  
vim /etc/security/limits.conf  
在打开的文件底部添加下面内容  
oracle              soft    nproc   2047  
oracle              hard    nproc   16384  
oracle              soft    nofile  1024  
oracle              hard    nofile  65536  
oracle              soft    stack   10240  

7. 创建安装Oracle软件所需要的目录

# mkdir -p /home/oracle_11/app/  
# chown -R oracle:oinstall /home/oracle_11/app/  
# chmod -R 775 /home/oracle_11/app/  

8. 配置安装Oracle安装用户(oracle)的环境

编辑 /home/oracle/.bash_profile  
vim /home/oracle/.bash_profile  
在打开的文件中添加下面内容  
umask 022  
export ORACLE_BASE=/home/oracle_11/app  
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1  
export ORACLE_SID=orcl --Oracle实例名,可修改  
export PATH=$PATH:HOME/bin:$ORACLE_HOME/bin  
编辑 /etc/pam.d/login  
vim /etc/pam.d/login  
在打开的文件中添加下面内容  
session required /lib/security/pam_limits.so  
session required pam_limits.so  
编辑 /etc/profile  
vim /etc/profile  
在打开的文件中添加下面内容  
if [ $USER = "oracle" ]; then  
   if [ $SHELL = "/bin/ksh" ]; then  
      ulimit -p 16384  
      ulimit -n 65536  
   else  
      ulimit -u 16384 -n 65536  
   fi  
fi  

9. 查看系统是否支持图形界面

查看root用户下是否已设置DISPLAY变量  
# echo $DISPLAY  
如果有值出现,则说明已设置DISPLAY变量;否则,就需要手动设置DISPLAY  
# export DISPLAY=localhost:0.0
# su - Oracle
# export DISPLAY=localhost:0.0
root用户执行 xhost +

10. 开始安装Oracle软件

# cd /tmp  
# unzip linux_11gR2_database_1of2.zip linux_11gR2_database_2of2.zip  
# xhost +  
# su - oracle  
$ export DISPLAY=:0  
$ cd /database  
$ ./runInstaller  
接下来系统会启动Oracle图形安装界面,安装过程和Windows下一样  

如果是用ssh和ftp连接的linux安装时可以通过VNC连接linux

  1. 启动 VNC Server: 打开终端执行:vncserver
  2. 使用vncpasswd命令设置一个vnc server密码。如果不设置密码,vncserver将无法启动。
  3. 默认情况下VNC Viewer只能看到 VNC Server的命令行。 要VNC Viewer上可以看到Linux桌面需要做如下设置: 在VNC Viewer所在的机器上,取消/root/.vnc/xstartup文件中下面两行的注释即可: unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc
    将最后一行,“twm”改为startkde(这个是KDE环境)或gnome-session(这个是GNOME环境);

在安装过程中,会提示在root用户下运行两个脚本文件(具体是哪两个,不记得了,按提示操作即可)。
Linux下的Oracle在安装结束后是处于运行状态的。重启机器后,Oracle不会像在Windows下那样将Oracle添加到Windows服务,在linux下需要手动启动Orcle服务

以oracle用户下,执行下面的命令  
进入sqlplus  
$ sqlplus /nolog  
以sysdba的身份连接到数据库,并启动Oracle数据库引擎  
SQL> conn /as sysdba  
SQL> startup  
退出sqlplus,运行Listener  
SQL> exit  
$ lsnrctl start  

这样就可以连接到Oracle数据库了。如果想用Oracle提供的EM来管理Oracle的话还需要启动EM控制台,运行如下命令:
$ emctl start dbconsole
这样就可以通过http://localhost:1158/em/ 来访问EM控制台了。

使用dbstart和dbstop来启动Oracle服务
可能使用dbstart命令来启动数据库更方便一些,但初次安装完oracle之后使用dbstart命令会报这样的错误
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
Usage: /u01/app/oracle/product/11.2/db/bin/dbstart ORACLE_HOME
出现这样错误的原因是由于没有设置ORACLE_HOME_LISTNER的原因,我们查看一下dbstart这个文件
more /home/oracle_11/app/oracle/product/11.2/db/bin/dbstart
部分内容如下

# First argument is used to bring up Oracle Net Listener  
ORACLE_HOME_LISTNER=$1  
if [ ! $ORACLE_HOME_LISTNER ] ; then  
  echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"  
  echo "Usage: $0 ORACLE_HOME"  
else  
  LOG=$ORACLE_HOME_LISTNER/listener.log  
  # Set the ORACLE_HOME for the Oracle Net Listener, it gets reset to  
  # a different ORACLE_HOME for each entry in the oratab.  
  export ORACLE_HOME=$ORACLE_HOME_LISTNER  

解决方案就算将$ORACLE_HOME赋值给$ORACLE_HOME_LINTNER,保存,退出
再一次执行dbstart,但是没有反映,没有报错,如果我们需要使用dbstart,则需要在/etc/oratab这个文件中的实例最后的N改成Y,如下
orcl:/home/oracle_11/app/oracle/product/11.2/db:Y

OK,保存,再试一下dbstart命令,返回结果如下
Processing Database instance "orcl": log file /home/oracle_11/app/oracle/product/11.2.0/db_1/startup.log
dbshut进行同样的设置.这样,以后就可以在启动监听之后直接使用dbstart和dbshut命令来启动和关闭数据了

将Oracle服务添加到Linux开机启动项,以root用户建立/etc/rc.d/init.d/oradb脚本文件,文件内容如下:

#!/bin/bash  
# chkconfig: 2345 90 10  
export ORACLE_BASE=/home/oracle_11/app/  
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1  
export ORACLE_SID=orcl  
export PATH=$PATH:$ORACLE_HOME/bin  
ORCL_OWN="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 -- start, stop, restart  
# of the instance and listener or usage display  
case "$1" in  
start)  
# Oracle listener and instance startup  
echo -n "Starting Oracle: "  
su - $ORCL_OWN -c "$ORACLE_HOME/bin/dbstart"  
touch /var/lock/subsys/oradb  
su - $ORCL_OWN -c "$ORACLE_HOME/bin/emctl start dbconsole"  
echo "OK"  
;;  
stop)  
# Oracle listener and instance shutdown  
echo -n "Shutdown Oracle: "  
su - $ORCL_OWN -c "$ORACLE_HOME/bin/emctl stop dbconsole"  
su - $ORCL_OWN -c "$ORACLE_HOME/bin/dbshut"  
rm -f /var/lock/subsys/oradb  
echo "OK"  
;;  
reload|restart)  
$0 stop  
$1 start  
;;  
*)  
echo "Usage: 'basename $0' start|stop|restart|reload"  
exit 1  
esac  
exit 0  

将该文件添加到开机启动

# chmod 755 /etc/rc.d/init.d/oradb  
# chkconfig --add oradb

重启服务

# service oradb stop  
# service oradb start  

下次启动机器的时候,Oracle服务会随机器一起启动。

Oracle数据库安装、配置完成。

Tip:Oracle数据库的默认端口号:1521,Oracle提供的EM管理器默认端口号是1158。


 上一篇
strings文件编解码 strings文件编解码
strings文件编解码sudo plutil -convert binary1 SystemFolderLocalizations.strings sudo plutil -convert xml1 ~/Desktop/SystemFol
2020-08-08
下一篇 
CentOS下安装JDK(bin) CentOS下安装JDK(bin)
CentOS下安装JDK(bin)信息查看安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息: java version “1.6.0”OpenJDK Runtime Environment (
2020-08-08
  目录