
先详细说明一下我的环境,系统:虚拟机Red Hat Enterprise Linux AS 5.4,数据库:Oracle Database 10g Release 2 (10.2.0.1)。Oracle去官方网站下载。我下载下来的文件是10201_database_linux32.zip。
二、安装Oracle 10g前的配置
其实Linux下安装Oracle 10g并不难,主要就是安装前的配置有点烦琐罢了。不过不要怕,安装过一两次你就会熟练了。开始了,Follow me!
1、安装Oracle所需软件包
先用rpm -qa | grep命令查询软件包是否安装了,没有的话再用rpm -ivh命令进行安装。
Yum install –y setarch-*,make,glibc,libaio-*,compat-*,gcc,libXp-*opermotif-*
(Red Hat Enterprise Linux AS5安装
# 从Red Hat Enterprise Linux AS5 光盘1
cd /media/cdrom/Server
rpm -ivh setarch-2*
rpm -ivh make-3*
rpm -ivh glibc-2*
rpm -ivh libaio-0*
# 从Red Hat Enterprise Linux AS5 光盘2
cd /media/cdrom/Server
rpm -ivh compat-libstdc++-33-3*
rpm -ivh compat-gcc-34-3*
rpm -ivh compat-gcc-34-c++-3*
rpm -ivh gcc-4*
rpm -ivh libXp-1*
# 从Red Hat Enterprise Linux AS5 光盘3
cd /media/cdrom/Server
rpm -ivh openmotif-2*
rpm -ivh compat-db-4*
)
2、修改系统版本
vi /etc/redhat-release
redhat-4
#Red Hat Enterprise Linux Server release 5.4 (Tikanga)
因为oracle 的官方只支持到RHEL4为止,所以要修改版本说明。把Red Hat Enterprise Linux Server release 5.4 (Tikanga)这一行注释掉,前面加上一行redhat-4。当然oracle安装完成后要修改回来。redhat-4 必须为redhat-release文件的第一行,否则安装时还会报警告。
3、修改内核参数
#vi /etc/sysctl.conf
增加下面的内容到文件中:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
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.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
运行下面的命令使得内核参数生效:
/sbin/sysctl –p
4、建立安装Oracle需要的用户、组及目录
(1)新增组和用户:
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle
passwd oracle
(2)创建Oracle的安装目录,并把权限付给oracle用户:
mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01
5、设置oracle用户的shell limit
#vi /etc/security/limits.conf
增加下面的内容到文件 /etc/security/limits.conf 文件中:
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
增加下面的内容到文件 /etc/pam.d/login 中,使shell limit生效:
session required /lib/security/pam_limits.so
6、配置静态IP地址
哈哈,相信大家都会,我就不用说了吧。
7、修改/etc/hosts
Ip 你的主机及名
如果不修改安装会提示错误
8、关闭SeLinux
因为SeLinux对oracle有影响,所以把Secure Linux设成无效,编辑文件/etc/selinux/config :
SELINUX=disabled
当然你也可以用图形界面下的工具 (系统 >管理 >安全级别和防火墙),选择SELinux页面并且设为无效。
9、配置Oracle用户的环境变量
登录到oracle用户并且配置环境变量,编辑/home/oracle目录下的.bash_profile文件
vi .bash_profile
增加下面的内容到文件 .bash_profile
# Oracle Settings
TMP=/tmpexport TMP
TMPDIR=$TMPexport TMPDIR
ORACLE_BASE=/u01/app/oracleexport ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_HOME
ORACLE_SID=orclexport ORACLE_SID
ORACLE_TERM=xtermexport ORACLE_TERM
PATH=$PATH:$ORACLE_HOME/binexport PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/libexport LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibexport CLASSPATH
if [ $USER = "oracle" ]then
if [ $SHELL = "/bin/ksh" ]then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
里面的SID在安装数据库时候如果修改了,安装完后需要回来重新修改SID。修改完用“source .bash_profile”使其生效。
10、修改开机使用文本模式登录
如果没有下面这些步骤,oracle在安装时可能出现问题。可能会出现使用oracle用户启动安装界面的时候报错,无法启动图形化界面。
#vi /etc/inittab
把 id:5:initdefault: 修改为 id:3:initdefault,等oracle安装完成后可以修改回来。
#reboot(重启)
11、添加你的机器oracle用户可以使用图形化界面
在文本模式下,用root登录,然后:
# startx
# xhost +
# su - oracle
$ export DISPLAY="192.168.8.8:0.0" #此处修改为你的IP地址
$ export LANG=en_US #设置运行语言
进入Oracle安装目录
$ ./runInstaller #开始安装喽
按照上面安装就可以了
oracle 10g setup在linux下安装oracle是一件令人生畏的事情,其复杂程度远远超过安装linux *** 作系统本身。如果能够进行成功的安装oracle,那么同时也就顺便掌握了linux一些技术。本文介绍在redhat linux 下安装oracle 10g 的方法。在这里说明一下,Oracle 10g的g是grid 的缩写,意为网格,目前较为前沿的网络计算技术。
Oracle 10g 对软硬件的要求都非常的高,所以要玩转的话的花不少银子。首先来看看它对硬件的要求:内存512兆(建议1G),cpu 主频2.0G以上,硬盘转速7200转以上(建议使用scsi硬盘),依此条件,我看买台服务器才行。其次是软件要求:在oracle 官方的文档里,对于x86系列支持的 *** 作系统只有3种(radhat ES/AS 2.1(x86),redhat ES/AS 3(x86),unitedlinux1.0(x86) ),如果只有redhat 9也是可以安装的,不过要麻烦一点点。当然oracle 10g需要更多的软件模块才能进行安装,这些软件模块我将在后面逐一说明。在本例中,使用RedHat ES 3(x86)作为 *** 作平台,并且安装了xwindow。
接下来,我们检查是否符合oracle 10g 的安装要求,以表格的形式列出。首先是硬件情况。以root登录系统,并且启动x-window.如果用下表命令输出的值大于或等于建议值,请
检查项目 命令/方法 建议值
内存 #grep MemTotal /proc/meminfo 512MB
交换分区 #grep SwapTotal /proc/meminfo 1GB
/tmp目录空闲区 #df –k /tmp 400MB
硬盘空闲空间 #df -k 4GB
继续往下,检查软件需求。对redhat ES 3(x86),需要如下的软件包:
· Gnu gcc package, gcc-3.2.3-2 or 更高
下面的包也必须被安装:· make-3.79· binutils-2.11· openmotif-2.2.2-16· setarch-1.3-1 · compat-db-4.0.14.5· compat-gcc-7.3-2.96.122· compat-gcc-c++-7.3-2.96.122· compat-libstdc++-7.3-2.96.122· compat-libstdc++-devel-7.3-2.96.122
为了保证系统满足需求,执行下面的步骤检查安装的linux版本和安装的套件。
检查项目 命令/方法 建议值
Linux 版本 #cat /etc/issue ES 3
已安装的包 #rpm -q package_name 安装所需包(上表所列)
到这里我们已经全面的检查了安装oracle 10g所要求的软硬件环境,接着我们就要为安装创建组和用户。
下面的组和用户必须存在
The oinstall group (the oracle inventory group)
The dba group (the OSDBA group)
The oracle user (the oracle owner)
如果上面的组和用户不存在,用下面的步骤创建它们。(1)先查看这些组和用户是否存在:
#grep oinstall /etc/group
#grep dba /etc/group
(2)创建安装oracle 所需的组和用户
#groupadd osintall
#groupadd dba
#useradd –g oinstall –G dba oracle 检查一下oracle 是否属于组 oinstall 和 dba (#id oracle) 再给oracle 设置一个用户口令 #passwd oracle 输入两次密码。
创建安装所需的目录 /u01/app/oracle (the oracle base directory), /u02/oradata (an optional default directory ),用下表的命令形式创建它.然后改变它的目录权限。
创建目录 更改权限
#mkdir –p /u01/app/oracle #chown –R oracle:Oinstall /u01/app/oracle /u02/oradata
#mkdir –p /u02/oradata #chmod –R 755 /u01/app/oracle /u02/oradata
配置内核参数,下表是oracle 推荐的内核参数值,请参考。
Parameter Value File
semmslsemmnssemopmsemmni 25032000100128 /proc/sys/kernel/sem
shmall 2097152 /proc/sys/kernel/shmall
shmmax Half the size of physical memory /proc/sys/kernel/shmmax
shmmni 4096 /proc/sys/kernel/shmmni
file-max 65536 /proc/sys/fs/file-max
ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range
确保当前的参数值大于或等于上表所列。那么怎样查看这些参数值呢?用命令 #/sbin/sysctl –a | grep ,例如查看semmsl,用 #/sbin/sysctl -a | grep sem,余下的与此类似。逐个察看这些参数值,如果参数值不满足要求,就需要修改它们。请完成下面这些步骤
a.用文本编辑器,创建或者编辑/etc/sysctl.conf文件,添加或修改如下的行
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
b.改变当前内核参数的值,用命令 #/sbin/sysctl –p 来实现。
为了提高在linux系统上运行软件的性能,必须对oracle用户设置下列shell 限定。
Shell Limit Item in limits.conf Hard Limit
Maximum number of open file descriptors nofile 65536
Maximum number of processes available to a single user nproc 16384
现在创建这些限定:
1. 加入下面的行到文件/etc/security/limits.conf
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
2. 加入下面的行到文件/etc/pam.d/login ,假如它不存在的话
session required /lib/security/pam_limits.so
3.根据oracle 用户的默认shell,对默认 shell start-up文件作如下改变,如果是Bourne, Bash, or Korn shell,修改环境变量/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
如果是c shell,则环境变量文件 /etc/csh.login的修改值如下:
if ( $USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
endif
接下来挂接光盘,#mount /dev/cdrom /mnt/cdrom 。
以oracle 用户名登录系统,配置oracle 用户的环境。以oracle 帐号用安装器来安装oracle,但是开始运行安装器之前,还得设定oracle用户的环境变量,因此必须:
● 设置shell startup文件的umask 为022
● 设置DISPLAY, ORACLE_BASE, and ORACLE_SID 的环境变量。下面这些步骤是对这些环境变量进行设置的方法:
1、 开启一个终端会话
2、 确认xwindow 能正常显示。#xhost +
3、 改变用户为oracle. $ su – oracle
4、 检查oracle用户的默认shell. $echo $SHELL
5、 用文本编辑器修改oracle用户的环境变量
●bash shell on redhat
$vi .bash_profile
●c shell
%vi .login
6、 把下面的行插入上面编辑的文件中
umask 022
7、 保存文件并退出
8、 运行shell开始脚本:
●Bash shell on Red Hat $ . ./.profile
●C shell % source ./.login
9、设置环境变量
●Bash shell
$ ORACLE_BASE=/u01/app/oracle
$ ORACLE_SID=sales
$ export ORACLE_BASE ORACLE_SID
●c shell
% setenv ORACLE_BASE /u01/app/oracle
% setenv ORACLE_SID sales
10、确认ORACLE_HOME and TNS_ADMIN 的环境变量不被用户设置
●Bash shell
$ unset ORACLE_HOME
$ unset TNS_ADMIN
●c shell
% unsetenv ORACLE_HOME
% unsetenv TNS_ADMIN
11、再检验一下上面设定的环境变量是否正确。
$ umask
$ env | more
哎呀!终于算是完成准备工作了,喝口水,伸伸懒腰。进入安装器(runInstaller)所在的目录 $ cd /tmp 运行安装 $ /mnt/cdrom/runInstaller ,依照提示完成整个安装。
LINUX安装ORACLE不一定非要图形安装,可以使用命令行的静默安装方式:Oracle10g静默方式安装方法介绍
阅读帮助:
以“#”开头的命令为root用户下执行的;
以“$”开头的命令为普通用户(这里是oracle用户)下执行的;
以“##”开头的是对其下面命令的解释说明;
鉴于数据库实施现场往往无法直接(或远程)登录主机的图形界面,或者主机本身就没有安装X组件,只提供字符界面。在此情况下就无法使用图形的交互方式安装oracle软件,就必须使用静默方式安装;静默方式的关键是准备安装环境和响应文件的修改;
下面以linux系统下安装oracle 10.2.0.1的版本举例其安装步骤:
一、安装之前:
1、以root用户登录系统,创建必要的用户组和用户:
##创建oracle软件安装组
#groupadd oinstall
##创建dba组
#groupadd dba
##创建oracle用户,加入到oinstall和dba组,并设置其HOME目录为/opt/oracle
#useradd -g oinstall -G dba -d /opt/oracle oracle
##设置oracle用户的密码
#passwd oracle
2、su到oracle用户,配置环境变量并写入shell的配置文件(bash的配置文件为~/.bash_profile)
##由root用户切换到oracle用户
#su – oracle
##设置ORACLE_BASE
$export ORACLE_BASE=/opt/oracle
##设置ORACLE_HOME
$export ORACLE_HOME=/opt/oracle/product/10g2
##设置ORACLE_SID
$export ORACLE_SID=SOC
##创建$ORACLE_HOME(虽然已经设置了环境变量,但实际的目录并没有创建)
$mkdir -p /opt/oracle/product/10g2
##修改PATH,增加oracle应用程序(如:sqlplus)的执行路径
$export PATH=$ORACLE_HOME/bin:$PATH
##将以上环境变量的设置保存到~/.bash_profile中。
3、准备Oracle安装包
##以oracle用户登录系统
##创建安装介质存放的目录
$mkdir /opt/oracle/oracd
##将安装包上传到此目录ftp需要以bin方式上传
##将安装包解开
$cd /opt/oracle/oracd
$gunzip 10201_database_linux_x86_64.cpio.gz
$cpio -idcmv <10201_database_linux_x86_64.cpio
##解包后会在当前目录下生成database目录;
##进入database目录
$cd database
##复制企业版响应文件的模板并编辑
$cp response/enterprise.rsp ./
#vi enterprise.rsp
##将enterprise.rsp中的
##UNIX_GROUP_NAME=<Value Unspecified>替换成 UNIX_GROUP_NAME="oinstall"
##ORACLE_HOME=<Value Required>替换成 ORACLE_HOME="/opt/oracle/product/10g2"
##ORACLE_HOME_NAME=<Value Required>替换成 ORACLE_HOME_NAME="OraDbHome1"
##n_configurationOption=<Value Required>替换成 n_configurationOption=3
##附修改后和之前的响应文件的对比
$ diff enterprise.rsp response/enterprise.rsp
35c35
<UNIX_GROUP_NAME=oinstall
—
>UNIX_GROUP_NAME=<Value Unspecified>
62c62
<ORACLE_HOME=/opt/oracle/product/10g2
—
>ORACLE_HOME=<Value Required>
70c70
<ORACLE_HOME_NAME=OraDbHome1
—
>ORACLE_HOME_NAME=<Value Required>
422c422
<n_configurationOption=3
—
>n_configurationOption=<Value Required>
二、开始安装:
$cd /opt/oracle/oracd/database
$./runInstaller -ignoreSysPrereqs -silent -force -responseFile /opt/oracle/oracd/database/enterprise.rsp
三、安装后配置:
##以root用户顺序运行以下脚本:
#/opt/oracle/oraInventory/orainstRoot.sh
#/opt/oracle/product/10g2/root.sh
四、oracle数据库软件安装结束;可以开始SOC的数据库实例或数据库补丁集的安装了;
附:升级补丁的安装:
##所有 *** 作如未指明用户,则都需在oracle用户下执行
##将升级补丁包上传到数据库服务器的oracle用户下
##解包补丁文件:
$unzip p6810189_10204_Linux-x86-64.zip
##进入生成的Disk1目录
$cd Disk1
##复制原响应文件以留作于编辑后的响应文件进行对比
$cp response/patchset.rsp response/patchset.rsp.orig
##编辑补丁响应文件:response/patchset.rsp
$vi response/patchset.rsp
##以下是编辑后的响应文件response/patchset.rsp和原响应文件response/patchset.rsp.orig 的对比结果
$diff response/patchset.rsp response/patchset.rsp.orig
45c45
<UNIX_GROUP_NAME=oinstall##必须与安装时的设置一致
—
>UNIX_GROUP_NAME=<Value Unspecified>
87c87
<ORACLE_HOME=/opt/oracle/product/10g2##必须与安装时的设置一致
—
>ORACLE_HOME=<Value Required>
99c99
<ORACLE_HOME_NAME=OraDbHome1 ##必须与安装时的设置一致
—
>ORACLE_HOME_NAME=<Value Required>
##开始补丁安装
$./runInstaller -ignoreSysPrereqs -silent -force -responseFile /opt/oracle/oracd/Disk1/response/patchset.rsp
##安装结束后,su到root用户下执行:
# /opt/oracle/product/10g2/root.sh
Running Oracle10 root.sh script…
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /opt/oracle/product/10g2
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin. Overwrite it? (y/n)
[n]: y
Copying dbhome to /usr/local/bin …
The file "oraenv" already exists in /usr/local/bin. Overwrite it? (y/n)
[n]: y
Copying oraenv to /usr/local/bin …
The file "coraenv" already exists in /usr/local/bin. Overwrite it? (y/n)
[n]: y
Copying coraenv to /usr/local/bin …
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
上述安装的安装包为:10201_database_linux_x86_64.cpio.gz 补丁包:p6810189_10204_Linux-x86-64.zip,希望可以帮到你!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)