1、在Linux enterprise 5下安装Oracle 10g在Linuxenterprise5下安装Oracle10g一、安装系统首先安装Linux系统,根据Oracle官方文档的建议,在机器内存小于1G的情况下,swap分区大小应该设置为内存的2倍大,若内存大于2G则swap分区设置为与内存大小一样。在系统安装的过程中,一定选择安装所有开发包,建议不要安装SELinux或者安装后在系统中禁止SELinux运行,否则会出现一些莫名其妙的问题。#vi /etc/selinux/config修改SELINUX=disabled为防止Oracle安装过程中出现乱码,建议使用英文作为系统语言,进行
2、Oracle的安装工作二、安装Oracle前的系统准备工作1.检查需要的软件包使用rpm -qa|grep 软件包关键词命令进行检测,一般情况下会需要手动安装如下的软件包: From RedHat AS5 Disk 1(32 Bit) # rpm -Uvh setarch-2* # rpm -Uvh make-3* # rpm -Uvh glibc-2* # rpm -Uvh libaio-0* From RedHat AS5 Disk 2(32 Bit) # rpm -Uvh compat-libstdc -33-3* # rpm -Uvh compat-gcc-34-3* # rpm -U
3、vh compat-gcc-34-c -3* # rpm -Uvh gcc-4* # rpm -Uvh libXp-1* From RedHat AS5 Disk 3(32 Bit) # rpm -Uvh openmotif-2* # rpm -Uvh compat-db-4*如果使用DVD安装介质的话,会很方便。2.修改Linux发行版本信息由于Oracle 10g发行的时候,RedHat Enterprise Linux 5没有发行,所以Oracle 10g并没有对RedHat Enterprise Linux 5确认支持,我们有两种方法可以让Oracle 10g支持RedHat Ente
4、rprise Linux 5。方法一:我们需要手工修改Linux的发行注记,让Oracle 10g支持RedHat Enterprise Linux 5。编辑/etc/redhat-release文件# vi /etc/redhat-release将其中的内容Red Hat Enterprise Linux Server release 5 (Tikanga)修改为Red Hat Enterprise Linux AS release 4 (Nahant Update 4)方法二:还有文章说修改Oracle安装包中install/oraparam.ini文件的内容,也可以让Oracle 10g
5、支持RedHat Enterprise Linux 5,修改方法如下:# vi install/oraparam.ini在其中的Certified Versions段落增加redhat-5#Certified VersionsLinux=redhat-3,SuSE-9,redhat-4,redhat-5,UnitedLinux-1.0,asianux-1,asianux-2再添加Linux-redhat-5.0-optionalTEMP_SPACE=80SWAP_SPACE=150MIN_DISPLAY_COLORS=2563.修改系统内核参数# vi /etc/sysctl.confkern
6、el.shmall = 2097152 / 该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改kernel.shmmax = 2147483648 / 该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2Gkernel.shmmni = 4096 / 这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改kernel.sem = 250 32000 100 128 / 表示设置的信号量fs.file-max = 65536 / 表示文件句柄的
7、最大数量。文件句柄设置表示在linux系统中可以打开的文件数量net.ipv4.ip_local_port_range = 1024 65000net.core.rmem_default=262144 / 默认的接收窗口大小net.core.rmem_max=262144 / 接收窗口的最大大小net.core.wmem_default=262144 / 默认的发送窗口大小net.core.wmem_max=262144 / 发送窗口的最大大小修改好内核参数后,执行如下命令使新的设置生效# /sbin/sysctl -p4.创建Oracle用户、组、安装目录(1) 创建Oracle用户组# g
8、roupadd oinstall# groupadd dba(2) 创建Oracle用户# useradd -m -g oinstall -G dba oracle(3) 设置Oracle用户口令# passwd oracle(4) 创建Oracle安装目录以及数据存放目录# mkdir -p /DBSoftware/app/oracle# mkdir -p /DBData/oradata(5) 修改目录权限# chown -R oracle:oinstall /DBSoftware/app/oracle/ /DBData/oradata/# chmod -R 755 /DBSoftware/
9、app/oracle/ /DBData/oradata/5.添加以下内容到/etc/security/limits.conf# vi /etc/security/limits.conforacle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 655366.添加以下内容到/etc/pam.d/login# vi /etc/pam.d/loginsession required /lib/security/pam_limits.sosession required pam_limit
10、s.so7.添加以下内容到/etc/profile# vi /etc/profileif $USER = oracle ; then if $SHELL = /bin/ksh ; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fifi8.配置Linux主机检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。9.配置oracle用户环境变量# su - oracle$
11、vi /.bash_profile增加如下内容:export ORACLE_BASE=/DBSoftware/app/oracle / 上面创建的Oracle安装文件夹export ORACLE_SID=orclexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export PATH=$PATH:$ORACLE_HOME/binexport LD_LIBARY_PATH=$ORACLE_HOME/libexport PATHumask 022保存后使用如下命令,使设置生效:$ source /.bash_profile三、安装Oracle,并
12、进行相关设置1.解压缩安装文件Oracle的安装包有这样几种格式:(1) zip这种格式最好解压缩,直接使用命令unzip 文件名即可(2) cpio.gz这种格式有这样几种解压缩方式# zcat XXXX.cpio.gz | cpio -idmv# gunzip XXXX.cpio.gz 解压出XXXX.cpio文件# cpio -idvm XXXX.cpio (此时要把cpio文件COPY到刚刚建立的安装文件夹内)解压缩完成后,设置oracle帐户可以操作安装文件所在的目录chown -R oracle:oinstall “安装文件所在目录”2. 用oracle帐户进入安装文件所在目录,执
13、行如下命令即可看到安装界面:$ ./runInstaller如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:# export DISPLAY=:0.0# xhost + (此时SELINUX一定要已经禁用了,否则会报错。)$ ./runInstaller出现安装界面后,根据界面提示进行相关的设置,我的建议是在安装过程中不创建数据库,只安装程序,监听和创建数据库等安装完成后再进行相关的操作。安装过程中,需要使用root权限执行两个脚本。3. 安装完成后,将/etc/redhat-release文件中的内容修改回Red Hat Enterprise Linux Server
14、release 5 (Tikanga)4.创建监听以及创建数据库(1) 创建监听程序使用Oracle提供的NET CONFIGURATION ASSISTANT创建TNS监听$ netca基本上就是一直Next就可以了,当然你也可以在这期间修改TNS的监听端口号TNS监听创建完成后可以使用如下命令进行检查:# netstat -atln 检查监听端口是否打开$ lsnrctl status 检查TNS监听状态确认监听已经成功启动后,即可执行Database Configure Assistant进行数据库的创建,执行命令如下:$ dbca在创建数据库的过程中,建议将数据库的字符集设置为Unic
15、ode UTF-8,防止出现乱码。四、数据库的启动脚本 (本人不建议用这种方法,测试未通过)# vi /etc/rc.d/init.d/oracle= Script =#!/bin/bash# chkconfig: 35 95 1# description: init script to start/stop oracle database 10g, TNS listener, EMS# match these values to your environment:export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE
16、/product/10.2.0/db_1export ORACLE_TERM=xtermexport PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATHexport ORACLE_SID=demo1export DISPLAY=localhost:0export ORACLE_USER=oracle# see how we are called:case $1 in start) su - $ORACLE_USEREOO lsnrctl start sqlplus /nologEOS connect / as sysdba startupEOS em
17、ctl start dbconsoleEOOtouch /var/lock/subsys/$scriptname ; stop) su - $ORACLE_USEREOO lsnrctl stop sqlplus /nologEOS connect / as sysdba shutdown immediateEOS emctl stop dbconsoleEOOrm -f /var/lock/subsys/scriptname ; *) echo Usage: $0 start|stop ;esac=end of script=授权 :chown root.root /etc/rc.d/ini
18、t.d/oracle修改文件属性:chmod 755 /etc/rc.d/init.d/oracle以后启动/关闭Oracle可以使用如下命令操作:# service oracle start / 启动监听、数据库以及em# service oracle stop / 关闭监听、数据库以及em推荐方法1)、以root编辑/etc/oratab,类似 orcl:/u01/product/10.2.0/db_1:N 这种格式,其中orcl是你的ORACLE_SID,/u01/product/10.2.0/db_1是ORACLE_HOME,这里需要把N改为Y,即orcl:/u01/product/1
19、0.2.0 db_1:Y这样。2)、以oracle编辑$ORACLE_HOME/bin/dbstart,找到其中第78行:ORACLE_HOME_LISTNER=改为你自己的路径,或者可以改成ORACLE_HOME_LISTNER=$ORACLE_HOME保存脚本,以oracle用户运行dbshut和dbstart看是否能关闭、启动数据库。如果不能,一般是参数设置,根据报错找到对应位置更改。3)、利用rc.local 直接把dbstart加到rc.local中,实现开机自动启动。这里需要注意的是必须以oracle启动该脚本。用root编辑/etc/rc.local,添加下面一行:su - or
20、acle -c /dbsoftware/app/oracle/product/10.2.0/db_1/bin/dbstart至此,用reboot重启主机,可以自动启动oracle.五、常见问题(FAQ)错误1在./runInstaller运行时出现,错误描述:Exception in thread main java.lang.UnsatisfiedLinkError: /tmp/OraInstall2007-09-25_10-54-49PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No
21、 such file or directoryat java.lang.ClassLoader$NativeLibrary.load(Native Method)at java.lang.ClassLoader.loadLibrary0(Unknown Source)at java.lang.ClassLoader.loadLibrary(Unknown Source)at java.lang.Runtime.loadLibrary0(Unknown Source)at java.lang.System.loadLibrary(Unknown Source)at sun.security.ac
22、tion.LoadLibraryAction.run(Unknown Source)at java.security.AccessController.doPrivileged(Native Method)at sun.awt.NativeLibLoader.loadLibraries(Unknown Source)at sun.awt.DebugHelper.(Unknown Source)at java.awt.Component.(Unknown Source)这个错误的出现原因是因为RatHat Enterprise Linux 5标准安装时,缺少libXp-1.0.0-8.i386.
23、rpm包的缘故,我安装时尽管选的是全安装,还是出现这个问题。在光盘的Server文件下找到libXp-1.0.0-8.i386.rpm,在该目录下使用命令:错误2在oracle Universal Installer:Install过程中出现,错误描述:Exception String: Error in invoking target all_no_orcl ihsodbc of makefile /oracle/oracle/product/10.2.0/rdbms/lib/ins_rdbms.mk. See /oracle/oraInventory/logs/installActions2007-09-25_03-42-11AM.log for details.Exception Severity: 1这个原因也是由于缺少相应的包compat-libstdc+-33-3.2.3-61.i386.rpm,手动安装吧。进到光盘的Sever目录下,运行下面命令:rootlocalhost Server #rmp -ivh compat-libstdc+-33-3.2.3-61.i386.rpm
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1