Linux下安装配置Oracle
[日期:2011-12-06] 来源:Linux社区 作者:wushuangyan26
1环境准备
1.1.linux系统安装
版本
RHAS4:RedHat Enterprise Linux Advance Server 4.0
1.2.检查环境
Hard Disk Space
[root@localhost /]#df –h
(目标安装目录) >2 G +1G(软件包源目录)
/tmp >400M
Mem>1G,swap>1G
[root@localhost /]#cat /proc/meminfo|grep Total
依赖软件版本
名称 最低版本 查询命令
kernel 2.6.9 #uname –a或 uname -r
glibc 2.3.2.95.27 #rpm -q glibc
gcc 3.2 #rpm -q gcc
make 3.79 #rpm -q make
binutils 2.14 #rpm -q binutils
libaio 0.3 #rpm -q libaio
openmotif 2.2.2-16 #rpm -q openmotif
setarch 1.3-1 #rpm -q setarch
1.3.检查并配置内核参数
检查当前参数
/sbin/sysctl -a | grep 参数名
配置内核参数
1) 执行 [root@localhost /]#vi /etc/sysctl.conf 添加如下内容
kernel.shmall = 2097152 # OS范围内共享内存的最大页面数量, 单位4K, 默认2097152
kernel.shmmax = 536870912 # OS范围内每个共享内存段的最大尺寸. 单位Byte,默认32M
kernel.shmmni = 4096 #OS范围内共享内存段的最大数目,默认值4096
kernel.sem = 250 32000 100 128 #信号量参数
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_defaut=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
2) 生效[root@localhost /]# /sbin/sysctl -p
1.4.创建Oracle组及用户
创建用户组oinstall,dba
创建安装数据库时所需要使用的用户组oinstall,dba
[root@localhost /]#groupadd oinstall
[root@localhost /]#groupadd dba
创建用户oracle
创建用户oracle并将oinstamll,dba组定义成oracle用户的主次组
[root@localhost /]# useradd -g oinstall -G dba oracle (设定oracle用户为oinstall、dba用户组的成员)
[root@localhost /]#passwd oracle (设定oracle用户的密码)
设置shell限制(可选)
(Oracle建议对每个Linux帐户可以使用的进程数和打开的文件数设置限制)
1)执行[root@localhost /]#vi /etc/security/limits.conf添加以下四行
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
2)修改安全限制,执行[root@localhost /]# vi /etc/pam.d/login加入如下1行
session required /lib/security/pam_limits.so
1.5.配置相关目录
创建Oracle系统的安装目录和数据库文件存放的目录
[root@localhost /]# mkdir -p /oracle/product/ 10.2.0 (创建数据目录)
[root@localhost /]# mkdir -p /oracle/oradata(创建数据文件目录)
[root@localhost /]# mkdir -p /oracle/flash_recovery_area(创建闪回目录)
[root@localhost /]# mkdir -p /oracle/arc_pstat(创建归档日志目录)
[root@localhost /]# mkdir -p /home/oracle/install_temp(创建oracle安装文件临时存放目录
[root@localhost /]# chown -R oracle.oinstall /home/oracle/install_temp
[root@localhost /]# chown -R oracle.oinstall /oracle
[root@localhost /]# chmod -R 775 /oracle (设定目录的读写权限)
1.6.配置环境变量
确定ORACLE_SID
确定oracle_sid=oracletest #后续安装后创建数据库时的服务名也保持一致,
以oracle用户登录,修改oracle用户下的 .bash_profile 文件,完成后重启或或执行soure .bash_profile(. .bash_profile)或重登录生效
[oracle@localhost ~]$ vi /home/oracle/.bash_profile增加以下内容
umask 022
ORACLE_BASE=/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0; export ORACLE_HOME
#图形界面安装时要使用的变量
ORACLE_TERM=xterm; export ORACLE_TERM
ORACLE_OWNER=oracle; export ORACLE_OWNER
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_SID= oracletest
export ORACLE_SID
退出后查看PATH source /home/oracle/.bash_profile
[oracle@localhost ~]$ set|grep PATH
2安装Oracle
1.1.oracle安装文件准备
版本
oracle10g01_10.2.0.1.0_database_linux32
文件准备
1)拷贝oracle10g01_10.2.0.1.0_database_linux32.zip
到目录/home/oracle/install_temp/下
2)解压:
unzip oracle10g01_10.2.0.1.0_database_linux32.zip
1.2.安装
1.1开始
[oracle@localhost ~]$cd /home/oracle/install_temp/
[oracle@localhost ~]$cd database
[oracle@localhost ~]$ ./runInstaller #开始执行安装,等待一会出现
1.1后续安装与window上基本一致(略)
后续安装与windows上基本一致,最后完成后出现如下图,切换用户到root下执行下两个配置脚本即可:
执行[root@localhost /]#/oracle/oraInventory/orainRoot.sh
执行[root@localhost /]#/oracle/product/10.2.0/root.sh如下所示,输入/oracle/product/ 10.2.0/bin/
3配置Oracle
1.1.创建数据库oracletest
执行[oracle@localhost ~]$dbca或图形菜单进行,注意下面一致即可(sys/oracletest)
1.2.配置监听,TNS
[oracle@localhost ~]$netca或图形菜单
最终 listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = oracletest)
(ORACLE_HOME = /oracle/product/10.2.0/)
(SID_NAME = oracletest)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
tnsnames.ora
ORACLETEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracletest)
)
)
1.3.EM
[oracle@localhost ~]$ emctl start| stop| status dbconsole
1.4.isqlplus
[oracle@localhost ~]$ isqlplusctl startstart| stop| status
1.5.配置自动启动
配置机器启动时自动启动数据库,监听与EM管理平台
停止时自动停止数据库,监听与EM管理平台
修改Oracle系统配置文件/etc/oratab,把AUTO域由默认的N设置为Y,使oracle 自带的dbstart和dbshut才能够发挥作用
[root@localhost /]#vi /etc/oratab
创建启动脚本
1)[oracle@localhost ~] vi $ORACLE_HOME/bin/dbstart 找到第78行ORACLE_HOME_LISTNER=…
改为ORACLE_HOME_LISTNER=$ORACLE_HOME,
[oracle@localhost ~]cd $ORACLE_HOME/bin/
手动运行 [oracle@localhost ~] ./ dbstart
[oracle@localhost ~] ./ dbshut
测试正常与否
(日志:$ORACLE_HOME/startup.log与$ORACLE_HOME/shutdown.log)
2) [root@localhost /]#vi /etc/init.d/oracle10g
#!/bin/sh
# description: Oracle auto start-stop script.
# chkconfig: - 20 80
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.
ORA_HOME=/oracle/product/10.2.0/
ORA_OWNER=oracle
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
#su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole"
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl stop dbconsole"
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
;;
'restart')
$0 stop
$0 start
;;
esac
3) [root@localhost ~]# chmod 750 /etc/init.d/oracle10g
[root@localhost ~]# ln -s /etc/init.d/oracle10g /etc/rc0.d/K10oracle10g
[root@localhost ~]#ln -s /etc/init.d/oracle10g /etc/rc3.d/S99oracle10g
[root@localhost ~]# chkconfig --list oracle10g
[root@localhost ~]# chkconfig --level 345 oracle10g on
[root@localhost ~]# chkconfig --list oracle10g
本篇文章来源于 Linux公社网站() 原文链接: