Redhat 5.5 安装oracle 11G
安装前准备工作:1、检查下列包是否安装,若未安装则要先安装:
binutils-2.17.50.0.6-2.el5
compat-libstdc++-33-3.2.3-61
elfutils-libelf-0.125-3.el5
elfutils-libelf-devel-0.125
glibc-2.5-12
glibc-common-2.5-12
glibc-devel-2.5-12
gcc-4.1.1-52
gcc-c++-4.1.1-52
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.1-52
libstdc++-4.1.1
libstdc++-devel-4.1.1-52.e15
make-3.81-1.1
sysstat-7.0.0
unixODBC-2.2.11
unixODBC-devel-2.2.11
检查发现以下软件包未安装:
libaio-devel-0.3.106-5.i386.rpm
sysstat-7.0.2-3.el5_5.1.i386.rpm
unixODBC-2.2.11-7.1.i386.rpm
unixODBC-devel-2.2.11-7.1.i386.rpm
安装软件包
rpm -ivh libaio-devel*.rpm sysstat-7.0.2-3*.rpm unixODBC-2.2.11-7.1.i386.rpm unixODBC-devel-2.2.11-7.1.i386.rpm
2> 检查内存与虚拟内存
# free
total used free shared buffers cached
Mem: 681540 415396 266144 0 4612 310660
-/+ buffers/cache: 100124 581416
Swap: 2048276 84 2048192
3> 检查磁盘空间
# df -h
Filesystem > /dev/sda3 18G5.3G 12G33% /
/dev/sda1 190M 12M169M 7% /boot
tmpfs 333M 0333M 0% /dev/shm
4> 查看系统版本
# uname -a
Linux node1.cn1 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:43 EDT 2010 i686 i686 i386 GNU/Linux
5> 配置主机名
# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1localhost6.localdomain6 localhost6
192.168.1.201 node1.cn node1
# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=node1.cn
GATEWAY=192.168.1.254
6> 创建安装用户与组 安装目录
# groupadd -g 1001 oinstall
# groupadd -g 1002 dba
# useradd -u 1001 -g oinstall -G dba oracle
# passwd oracle
Changing password for user oracle.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
# mkdir -p /u01/app/oracle//软件安装目录
# chown -R oracle:oinstall /u01
# mkdir -p /opt/oradata //oracel 数据存放目录
# chown -R oracle:oinstall /opt
# chmod -R 775 /opt/
7> 修改系统内核参数:
# vi /etc/sysctl.conf
===========================================
kernel.shmall = 2097152
kernel.shmmax = 536870912 //物理内存1半
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.aio-max-nr = 1048576
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048576 //1M
net.core.rmem_max = 1048576
net.core.wmem_default = 262144 //256K
net.core.wmem_max = 262144
# /sbin/sysctl -p //使内核参数即使生效
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmall = 2097152 //可用共享内存的总量,单位是页,在32位系统上一页等于4kB,也就是4096字节
kernel.shmmax = 536870912 //单个共享内存段的最大值,此值一般为物理内存的一半,不过大一点也没关系
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128 //设置的信号量,这4个参数内容大小固定
fs.file-max = 65536 //文件句柄的最大数量。文件句柄表示在Linux系统中可以打开的文件数量
fs.aio-max-nr = 1048576 //文件系统最大异步io
net.ipv4.ip_local_port_range = 9000 65500 //应用程序可使用的IPv4端口范围
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576 //接收套接字缓冲区大小的最大值
net.core.wmem_default = 262144
net.core.wmem_max = 262144 //发送套接字缓冲区大小的最大值
8> 设置oracle使用的文件数权限
# vi /etc/security/limits.conf
oraclesoft nproc 2047
oraclehard nproc 16384
oraclesoft nofile1024
oraclehard nofile65536
9> 用户界面安全设置
# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so
10> 用户访问端口范围设置
# vi /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
11> 设置用户环境变量
# su - oracle
$ vi .bash_profile
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11g
export ORACLE_SID=orcl
export ORACLE_OWNER=oracle
export ORACLE_TERM=vt100
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export> $ source .bash_profile //使环境变量即使生效
12> 准备进入界面安装程序
# xhost +
access control disabled, clients can connect from any host
# su - oracle
$ cd /opt/database/ //进入安装文件存储目录
$ ls
docinstallresponserpmrunInstallersshsetupstagewelcome.html
$ ll //查看安装文件是否有执行权限
total 40
drwxr-xr-x 12 root root 4096 Aug 172009 doc
drwxr-xr-x4 root root 4096 Aug 142009 install
drwxrwxr-x2 root root 4096 Aug 142009 response
drwxr-xr-x2 root root 4096 Aug 142009 rpm
-rwxr-xr-x1 root root 4352 Aug 142009 runInstaller
drwxrwxr-x2 root root 4096 Aug 142009 sshsetup
drwxr-xr-x 14 root root 4096 Aug 142009 stage
-rw-r--r--1 root root 5400 Aug 182009 welcome.html
$ ./runInstaller //执行安装程序包
.............
$ sqlplus / as sysdba
SQL*Plus:> Copyright (c) 1982, 2009, Oracle.All rights reserved.
Connected to an> SQL> startup
ORACLE instance started.
Total System Global Area418484224 bytes
Fixed>
Variable> Database Buffers 134217728 bytes
Redo Buffers 6103040 bytes
Database mounted.
Database opened.
SQL> select instance_name,status from v$instance;
INSTANCE_NAMESTATUS
---------------- ------------
ora11g OPEN
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
设置 Oracle11g 自动随系统启动
$ vi/etc/oratab
ora11g:/u01/app/oracle/11g:y //重启动标志设置成 'Y'
$vi /u01/app/oracle/11g/bin/dbstart
ORACLE_HOME_LISTNER=$1 修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME
$vi /u01/app/oracle/11g/bin/dbshut
ORACLE_HOME_LISTNER=$1 修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME
创建一个oracle启动文件:
# cat /etc/init.d/oracle
#!/bin/sh
# chkconfig: 345 61 61 //这里头4项的设置与添加到系统服务有关系,设置不正确会导致找不到服务
# description: Oracle 11g AutoRun Services
# /etc/init.d/oracle
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/11g
export ORACLE_SID=ora11g
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="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 -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
start)
# Oracle listener and instance startup
su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
echo "Oracle Start Succesful!OK."
;;
stop)
# Oracle listener and instance shutdown
su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
echo "Oracle Stop Succesful!OK."
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo $"Usage: `basename $0` {start|stop|reload|reload}"
exit 1
esac
exit 0
#chmod 750 /etc/init.d/oracle //赋于文件执行的权限
#ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
#ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
#chkconfig --level 345 oracle on //设置启动
#chkconfig --add oracle //将程序添加到系统服务
#chkconfig --list oracle
ora11g 0:off 1:off 2:off 3:on 4:on 5:on 6:off
#reboot //重启测试
# ps -ef |grep ora //检查进程情况 或者直接登录数据库
$lsnrcl status //检查监听
页:
[1]