oracle notes,oracle install notes

本文详细介绍了在RedHat AS3操作系统上安装和配置Oracle 10g的过程,包括系统硬件检查、必要的软件包安装、环境变量设置、TNS参数配置以及数据库的启动和自动管理。文中还强调了核心参数调整、用户和组的创建、环境变量的设定等关键步骤,并提供了启动和停止Oracle数据库的脚本。
摘要由CSDN通过智能技术生成

1. 配置RedHat AS 3

操作系统版本:

Red Hat Enterprise Linux AS release 3 (Taroon)

Kernel 2.4.21-4.EL on an i686

按照常规来安装操作系统,记得要安装开发工具(gcc等必要工具).

1.1 检查必要的硬件信息

检查内容

最小值

检查命令参考

物理内存

512M

# grep MemTotal /proc/meminfo

交换空间

1.0 GB或者2倍内存大小

# grep SwapTotal /proc/meminfo

/tmp 空间

400 MB

# df -k /tmp

软件所需空间

2.5 GB

# df -k (空间越大越好,如果是正式系统,应该进行详尽的规划)

数据库文件

1.2 GB

# df -k (空间越大越好,如果是正式系统,应该进行详尽的规划)检查完如上各项之后, 应该修改核心参数.执行如下命令:

#vi /etc/sysctl.conf

#注释:

#表示使用root用户操作,$表示使用oracle 用户进行操作.提示符后面的蓝色部分表示需要输入的命令,以下同.

在该文件末尾加入如下内容:

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

net.core.rmem_default=262144

net.core.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

编辑完之后,保存,执行 # /sbin/sysctl -p 命令操作来使我们所做的变更生效.

注:上面kernel.shmmax/kernel.sem等是典型的核心参数配置.您可能需要根据您的实际环境进行适当的变动.

关于这些核心参数的说明在Oracle的 Oracle9i Installation Guide Release 2 (9.2.0.1.0) for UNIX Systems 中有很详细的说明.(http://download-west.oracle.com/docs/html/A96167_01/toc.htm)

然后,应该检查一下上面的操作是否正确:

# /sbin/sysctl -a | grep sem

# /sbin/sysctl -a | grep shm

# /sbin/sysctl -a | grep file-max

# /sbin/sysctl -a | grep ip_local_port_range

为Oracle用户设定Shell的限制

一般来说,出于性能上的考虑,还需要需要进行如下的设定,以便改进Oracle用户的有关 nofile(可打开的文件描述符的最大数)和nproc(单个用户可用的最大进程数量)

# vi /etc/security/limits.conf

# 添加如下的行

*               soft    nproc   2047

*               hard    nproc   16384

*               soft    nofile  1024

*               hard    nofile  65536

添加如下的行到/etc/pam.d/login 文件:

session    required     /lib/security/pam_limits.so

编辑 /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之后,执行$ ulimit 验证一下.

1.2 检查并安装相关补丁

在这个版本的RHEL上安装Oracle,必须要有几个软件包. 确认以下 rpm包都已经安装:

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

# rpm -qa | grep compat

# 在机器上输出如下:

compat-gcc-c++-7.3-2.96.122

compat-libstdc++-7.3-2.96.122

compat-libstdc++-devel-7.3-2.96.122

compat-glibc-7.x-2.2.4.32.5

compat-db-4.0.14-5

compat-gcc-7.3-2.96.122

# rpm -qa | grep openmotif

openmotif-devel-2.2.2-16

openmotif-2.2.2-16

# rpm -qa | grep setarch

setarch-1.3-1

上面显示的内容是在笔者已经安装了具体的RPM包之后的结果.一般情况下,你的系统上的输出结果和这个不同.如果个别包没有安装,把系统安装光盘mount上,找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应的包:

# rpm -ivh *.rpm

要额外注意的是,这些软件包之间是有依赖性的,先后的顺序要找好.否则会报告不能安装的错误. 此外,最好验证一下 gcc和glibc的版本(要求是gcc-3.2.3-2 或者更高):

#gcc -v

#rpm -q glibc

1.3 创建用户和相关的组

# /usr/sbin/groupadd oinstall

# /usr/sbin/groupadd dba

# /usr/sbin/useradd -g oinstall -G dba oracle

如果只是测试目的的话,不创建oinstall组也没什么. 不过还是规范一点比较好.如果oracle 用户和dba组等已经存在,作适当的调整即可.

1.4 检查并调整环境变量登录为oracle用户

# su - oracle

$ cd

$ vi .bash_profile

#添加如下内容,你的具体值应该不会和这个完全相同.

# oracle begin

export ORACLE_BASE=/datas/oracle

export ORACLE_HOME=$ORACLE_BASE/product/dbServer

export ORACLE_SID=audit

export PATH=$PATH:$ORACLE_HOME/bin

export BUILD_CCC296=1

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

export LC_CTYPE=en_US.UTF-8

export LC_TYPE=zh_CN.UTF-8

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export SQLPATH=$HOME/mysql

CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:.;

export CLASSPATH

export LD_LIBRARY_PATH=$ACE_ROOT/lib:$LD_LIBRARY_PATH

# oracle end

然后执行

$ source .bash_profile

使环境变量生效. /oracle 等目录应该建立好并做合适的授权.

2. 安装Orale10g

mount安装盘.由于10g无法以root安装,以前面建的oracle用户登录.执行:

$ ./runInstaller

按照提示安装即可,最后还需要以root运行两个脚本。

3. 配置TNS参数

在 /oracle/product/dbse/network/admin/ 目录下有 listener.ora 和 tnsnames.ora 两个文件,设置如下:

#listener.ora

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME = orcl)

(ORACLE_HOME = /oracle/product/dbse)

(SID_NAME = orcl)

)

)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

)

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))

)

)

)

#tnsnames.ora

ORCL =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

EXTPROC_CONNECTION_DATA =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

(CONNECT_DATA =

(SID = PLSExtProc)

(PRESENTATION = RO)

)

)

其中SERVICE_NAME与SID_NAME一定要和.bash_profile中的ORACLE_SID相一致,否则无法启动

4. 启动Oracle

以oracle用户登录

4.1 启动TNS监听器

$ lsnrctl start出现如下显示,表示监听服务成功开启

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 22-FEB-2006 10:24:03

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Starting /oracle/product/dbse/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 10.2.0.1.0 - Production

System parameter file is /oracle/product/dbse/network/admin/listener.ora

Log messages written to /oracle/product/dbse/network/log/listener.log

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.100)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER

Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production

Start Date                22-FEB-2006 10:24:03

Uptime                    0 days 0 hr. 0 min. 0 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /oracle/product/dbse/network/admin/listener.ora

Listener Log File         /oracle/product/dbse/network/log/listener.log

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.100)(PORT=1521)))

Services Summary...

Service "orcl" has 1 instance(s).

Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...

The command completed successfully

4.2启动数据库9i 之后已经没有 svrmgrl 了,所有的管理工作都通过 sqlplus 来完成:

$ sqlplus /nolog

SQL> connect system/change_on_install as sysdba

SQL> startup

出现如下显示,表示Oracle已经成功启动

ORACLE instance started.

Total System Global Area  285212672 bytes

Fixed Size                  1218968 bytes

Variable Size              88082024 bytes

Database Buffers          188743680 bytes

Redo Buffers                7168000 bytes

Database mounted.

Database opened.

4.3 自动启动与关闭

编辑 /etc/oratab ,把所有的 instance 的重启动标志设置成 'Y',如:

orcl:/oracle/product/dbse:Y

做一个启动脚本 /etc/init.d/dbora ,如下所示:

#!/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/dbse

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"

;;

'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/lsnrctl stop"

su - $ORA_OWNER -c $ORA_HOME/bin/dbshut

;;

'restart')

$0 stop

$0 start

;;

esac

赋予执行权限

chmod 750 /etc/init.d/dbora

作成以下链接:

ln -s /etc/init.d/dbora /etc/rc0.d/K10dbora

ln -s /etc/init.d/dbora /etc/rc3.d/S99dbora

执行以下命令:

chkconfig --level 345 dbora on

这样就OK了。下次开关机的时候,Oracle也会随之启动/停止。

参考信息

http://www.dbanotes.net

posted on 2008-01-08 18:02 flyonok 阅读(210) 评论(0)  编辑 收藏 引用 所属分类: oralce

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值