一.一些简单知识:

1) 命令

操作系统型号

# cat /etc/issue

内核型号

# uname -r

查询安装包

# rpm -q package_name

二:安装前准备:

1) 环境

内存 2048M ,硬盘 146G

2) 分区

/ 30G

/tmp 2G

/var 3G

/app 20G

/app/oradata 60G

/app/oraBP 20G

3 )修改配置文件/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

net.core.rmem_default = 1048576

net.core.rmem_max = 1048576

net.core.wmem_default = 262144

net.core.wmem_max = 262144

重新启动

4 )安装必须的编译安装包
# yum -y install setarch-2*
# yum -y install make-3*
# yum -y install glibc-2*
# yum -y install libaio-0*

# yum -y install compat-libstdc++-33-3*
# yum -y install compat-gcc-34-3*
# yum -y install compat-gcc-34-c++-3*
# yum -y install gcc-4*
# yum -y install libXp-1*

# yum -y install openmotif-2*
# yum -y install compat-db-4*

5) 增加Oracle用户及设置oracle用户的shell

a) 建立oracle用户及组
# groupadd oinstall
# groupadd dba
# groupadd oper
# useradd -g oinstall -G dba oracle
# passwd oracle

 

b) 增加如下行到/etc/security/limits.conf

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

c) 增加下列行到/etc/pam.d/login

session required /lib/security/pam_limits.so

session required pam_limits.so

d) 修改Shell默认启动文件

Bourne,Bash,Korm 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

e) 修改ORACLE环境变量
# su - oracle
$ vi .bash_profile

export TMP=/tmp;
export TMPDIR=$TMP;

export ORACLE_BASE=/home/oracle;
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1;

 export ORACLE_SID=orcl;

export  ORACLE_TERM=xterm;
export PATH=/usr/sbin:$PATH;

export  PATH=$ORACLE_HOME/bin:$PATH;

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

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

 

5) 创建需要的目录

mkdir /app/oracle

chown -R oracle:oinstall /app/oracle

chmod -R 775 /app/oracle

chown -R oracle:oinstall /app/oradata

chmod -R 775 /app/oradata

chown -R oracle:oinstall /app/orabp

chmod -R 775 /app/orabp

这里只有一块硬盘,如果有多块硬盘,你需要将其建立一个挂接点,如 u01,

则目录为 /u01/app/oracle ,这里只有一个硬盘,挂接点就是 /

6) 设置oracle用户环境

a) 如果在远程系统上安装 oracle, 在本地的 X-Windows 里显示,要设置

xhost host_name

b) oracle 登陆 X-windows 系统 , su - oracle

c) 查看默认 Shell

echo $SHELL

d)bash

vi .bash_profile

如果设置了 ORACLE_SID,ORACLE_HOME,ORACLE_BASE, 删除相应行

e)umask 022

f) 保存文件,执行

. .bash_profile

g) 设置显示变量

DISPLAY=localhost:0.0 ; export DISPLAY

如果在远程显示界面, localhost 就改成远程主机

h) 如果 /tmp 空间不够,需要设置 TMP,TMPDIR 变量

$ su - root

# mkdir /mount_point/tmp

# chmod a+wr /mount_point/tmp

# exit

bash

$ TMP=/mount_point/tmp

$ TMPDIR=/mount_point/tmp

$ export TMP TMPDIR

i) 确定 ORACLE_HOME,TNS_ADMIN 没有设置

$ unset ORACLE_HOME

$ unset TNS_ADMIN

j) 检验是否设置正确

$ umask

$ env | more

7) 安装Oracle

a) 取得 Oracle 安装件

Oracle 网站上下载,是免费的,只需要一个简单的注册即可,得到的是 zip 文件

unzip 10201_database_linux32.zip

如果是安装光盘, mount 上介质

b) 运行

runInstaller

c) 安装过程和 Windows 非常类似,要注意的是

在选择 dba 组的时候选择 oinstall

安装之前程序会检查一下系统配置,如果按照上面的设置,不会有任何问题,

install 即可

这样安装的 oracle 的数据文件在默认目录下,如果要放到不同的盘上,

可以删除数据库重建,或者安装的时候选择高级安装

安装 Net 8 时,系统提示以 root 用户执行两个脚本,照做就可以了

8 )收尾,设置环境变量

1) 注意 ORACLE_HOME 变量,如果不存在,需要手工设置

ORACLE_HOME=/app/oracle/product/10.2.0/db_1

2) 建库命令为 /app/oracle/product/10.2.0/db_1/bin/dbca &

注意设置字符集,因为安装界面用中文没法安装,所以使用英文环境安装,

所以不能使用默认配置,要修改默认字符集及默认语言

3)Net 8 命令为 /app/oracle/product/10.2.0/db_1/bin/netca &

4) 在其它机器上远程用 Net8 连接 Oracle, 需要打开 Linux 上的 1521 端口

配置如下

Applications->System Setting->Secuity Level 其它端口增加 1521:tcp 即可

5) oracle 随机器启动而启动

.bash_profile 里设置

ORACLE_SID=orcl

ORACLE_HOME=/app/oracle/product/10.2.0/db_1

export ORACLE_SID

export ORACLE_HOME

PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export PATH

修改 /etc/oratab,

orcl:/app/oracle/product/10.2.0/db_1:Y

最后一个字母默认是 N ,修改为 Y ,否则 dbstart,dbshut 都不会起作用

修改 /app/oracle/product/10.2.0/db_1/dbstart 中的相关行为

ORACLE_HOME_LISTNER=/app/oracle/product/10.2.0/db_1

然后修改 /etc/rc.local, 增加这样的一行

su - oracle -c dbstart

这样就可以了,但不能关机的时候自动关闭,所以需要手工处理

su - oracle -c dbshut

如果是 oracle 用户可以直接 dbshut


注:我曾经尝试过网上找到的如下方法,但系统没法启动,需要用恢复模式删掉脚本才可以,

不知道是不是我的配置问题,如果看出我的错误请告诉我

开机时让 RedHat Linux 自动启动 Oracle ,需要完成以下步骤:


运行
$ORACLE_HOME 下的 root.sh ,会生成一个文件 /etc/oratab


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

ora10g:/home/oracle/OraHome_1: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=/app/oracle/product/10.2.0/db_1

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

 

修改操作系统版本标识
# vi /etc/redhat-release
#CentOS release 5.2 (Final)
redhat-4

 

安装oracle数据库
# su - oracle
$ export DISPLAY=192.168.1.3:0.0
$ /home/oracle/database/runInstaller
*
为客户机IP地址,xp下使用Xmanager 2.0连接远程服务器的桌面

1. Select Installation Method
选择
Advanced Installation
2. Specify Inventory Directory and Credentials
3. Select Installation Type
选择
Enterprise Edition
4. Specify Home Details
Name
文本框中填写
db_1
5. Product-Specific Prerequisite Checks
6. Select Configuration Option
选择
create a database
7. Select Database Configuration
选择
General Purpose
8. Specify Database Configuration Options
选择
Select Database character set : UTF-8
9. Select Database Management Option
选择
Use Database Control Database Management
10. Specify Database Storage Option
选择
File System
11. Specify Backup and Recovery Options
选择
Do not enable Automated backups
12. Specify Database Schema Passwords
选择
Use the same password for all the accounts
13. Summary
14. Install
15. Configuration Assistants
16. Database Configuration Assistant
17. Database Configuration Assistant Password Management
选择Password Management,除system以外全部锁定

18. Execute Configuration Scripts
root环境中执行
# /home/oracle/oraInventory/orainstRoot.sh
# /home/oracle/product/10.2.0/db_1/root.sh
19. End Of Installation

恢复操作系统版本
# vi /etc/redhat-release
CentOS release 5.2 (Final)

设置数据库开机自动启动
# /etc/oratab
orcl:/home/oracle/product/10.2.0/db_1:Y
# vi /etc/rc.local
su - oracle -c ‘dbstart’
# su - oracle
$ vi /home/oracle/product/10.2.0/db_1/bin/dbstart
78行修改为
ORACLE_HOME_LISTNER=$ORACLE_HOME/

数据库相关命令
$ dbstart [ start | status | stop ]
$ lsnrctl [ start | status | stop ]
$ emctl [ start | status | stop ] console
$ sqlplus /nolog
>connect system/passwd as sysdba

DBCA - Database Configuration Assistant
$ dbca

启动EM
http://localhost:1158/em/