CentOS 安装Oracle 11g R2
实验环境:
Linux服务器操作系统:CentOS 5.5 32位(注意:系统安装时请单独分区/data用来安装oracle数据库)
Linux服务器IP地址:192.168.32.130
Oracle数据库版本:linux_11gR2_database
Windows客户端系统:Windows Xp
具体操作:
一、安装 X window
yum groupinstall "X Window System"
vim /etc/inittab #图形界面启动
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
id:5:initdefault:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim /etc/sysconfig/iptables #开放UDP 177端口
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 177 -j ACCEPT
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shutdown -r now #重启
二、安装前准备工作
1、下载Oracle 11g R2 Linux版本
http://download.oracle.com/otn/linux/oracle11g/R2/linux_11gR2_databas
e_1of2.zip
http://download.oracle.com/otn/linux/oracle11g/R2/linux_11gR2_databas
e_2of2.zip
2、修改操作系统标识(oracle默认不支持CentOS系统安装)
vim /etc/redhat-release
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Red Hat Enterprise Linux Server release 5.5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3、创建oracle数据库安装目录
mkdir -p /data/oracle #安装目录
mkdir -p /data/oraInventory #配置文件目录
mkdir -p /data/database #软件包解压目录
4、创建运行oracle数据库的系统用户和用户组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
chown -R oracle:oinstall /data/oracle
chown -R oracle:oinstall /data/oraInventory
chown -R oracle:oinstall /data/database
5、设置内核参数
vim /etc/sysctl.conf
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Kernel paramaters required by Oracle 11gR1
fs.file-max = 6815744
fs.aio-max-nr = 3113202
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sysctl -p #刷新设置
6、Oracle用户限制设置
vim /etc/security/limits.conf
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Oracle set
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7、用户环境
vim ~oracle/.bash_profile
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export ORACLE_BASE=/data/oracle/oracle #安装目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl #数据库实例名
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
8、配置防火墙
vim /etc/sysconfig/iptables #开放1521端口
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
9、解压Oracle软件包
unzip linux_11gR2_database_1of2.zip -d /data/database
unzip linux_11gR2_database_2of2.zip -d /data/database
chown -R oracle:oinstall /data/database/database
10、安装Oracle依赖软件包
yum install -y binutils compat-libstdc++-33 elfutils-libelf
elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel
libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl
sysstat libXp unixODBC unixODBC-devel pdksh-*
三、安装Oracle
A、host +
su – oracle
export DISPLAY=:0.0
B、开机时用Oracle用户登录
cd /data/database/database #进入安装包目录
./runInstaller #安装,出现下面界面,图形配置过程略过
四、配置监听程序
su - oracle
netca #配置监听程序命令,图形配置过程略过
五、创建数据库实例
su - oracle
dbca #启动oracle实例安装界面,如下图所示,图形配置过程略过
六、启动Oracle
su - oracle
sqlplus /nolog #进入sqlplus环境,但不登录
conn / as sysdba #以超级管理员权限登录
startup #启动数据库实例
quit
lsnrctl start #启动监听
startup参数说明:
startup #不带任何参数,启动数据库实例并打开数据库,一般选择这种启动方式
startup nomount #只启动数据库实例,不打开数据库,一般用于创建新的数据库时使用
startup mount #启动数据库实例,并加载数据库,但不打开数据库,一般用于修改数据库名称等管理时使用
lsnrctl status #查看Oracle运行状态
七、关闭Oracle
su - oracle
lsnrctl stop #关闭监听
sqlplus /nolog
conn / as sysdba
shutdown immediate #关闭数据库实例
quit
shutdown参数说明:
normal #等待所有的用户断开连接,执行命令后不允许新连接
immediate #等待用户完成当前的语句后,再断开用户连接,不允许新用户连接
transactional #等待用户完成当前的事务后断开连接,不允许新用户连接
abort #强行断开连接并直接关闭数据库
八、启动脚本
vim /data/oracle/oracle/product/11.2.0/db_1/bin/dbstart
vim /data/oracle/oracle/product/11.2.0/db_1/bin/dbshut
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ORACLE_HOME_LISTNER=$ORACLE_HOME
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim /etc/init.d/oracle
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#!/bin/sh
# chkconfig: 0356 99 10
# description: Startup Script for Oracle Databases
# Script path:/etc/init.d/oracle
# Author:
#
ORACLE_BASE=/data/oracle/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl
PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
#
ORA_OWNR="oracle"
#
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
#
case "$1" in
start)
su - $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
echo "Oracle Start Succesful!"
;;
stop)
#
su - $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
echo "Oracle Stop Succesful!"
;;
restart)
$0 stop
$0 start
;;
*)
echo $"Usage: `basename $0` {start|stop|restart}"
exit 1
esac
exit 0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
chmod 755 /etc/init.d/oracle
2、添加系统服务
ln -s /etc/init.d/oracle /etc/rc3.d/S99oracle #添加系统启动级别3软连接
ln -s /etc/init.d/oracle /etc/rc5.d/S99oracle #添加系统启动级别5软连接
ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle #添加系统关机软连接
ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle #添加系统重启软连接
chkconfig --add oracle #添加系统服务
官方文档:http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#CEGHFFGG
参考文档: http://www.osyunwei.com/archives/5445.html