Oracle的强大之处,笔者不需多说,本文旨在和大家一同探讨Oracle数据库在Linux下的安装问题。
为了便于阅读,笔者已将文档重新整理后制作成了pdf格式,您可以直接下载附件。(附件大于2M,笔者分成了两个,下载时请注意合并。) 如果您需要下载Oracle 10g的linux镜像,您可以在以下两个连接中免费下载。(由于文件比较大,笔者被迫分成了两个文件,您在下载完之后,需要合并文件,唉,没办法,就是很麻烦。)
第一部分:http://down.51cto.com/data/512237
第二部分:http://down.51cto.com/data/512124
环境:Linux 5.4 (2.6.18)
Oracle 10g
第一步:修改系统配置信息。
//修改hostname
# hostname myoracle.phoenix.com
//为保证永久修改,需要修改文件
# vim /etc/sysconfig/network
HOSTNAME=myoracle.phoenix.com
//修改hosts文件
# vim /etc/hosts
127.0.0.1 phoenix.com phoenix localhost.localdomain localhost
192.168.187.1 localhost6.localdomain6 localhost6
//挂载光盘
# mkdir /mnt/cdrom
# mount /dev/cdrom /mnt/cdrom
第二步:检查软件包是否已经安装。
//需要进行检查的软件包如下:
Red Hat Enterprise Linux 4.0 and Asianux 2.0:
binutils-2.15.92.0.2-13.EL4 compat-db-4.1.25-9 compat-libstdc++-296-2.96-132.7.2 control-center-2.8.0-12 gcc-3.4.3-22.1.EL4 gcc-c++-3.4.3-22.1.EL44 glibc-2.3.4-2.9 glibc-common-2.3.4-2.9 gnome-libs-1.4.1.2.90-44.1 libstdc++-3.4.3-22.1 libstdc++-devel-3.4.3-22.1 make-3.80-5 pdksh-5.2.14-30 sysstat-5.0.5-1 xscreensaver-4.18-5.rhel4.2 setarch-1.6-1
//逐个进行检查
# rpm -qa |grep binutils
binutils-2.17.50.0.6-12.el5 //组件已经安装
# rpm -qa |grep compat
compat-libgcc-296-2.96-138 //组件已经安装
avahi-compat-libdns_sd-0.6.16-6.el5
compat-libstdc++-296-2.96-138
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
compat-libstdc++-33-3.2.3-61
# rpm -qi compat-db-4.2.52-5.1.i386.rpm
package compat-db-4.2.52-5.1.i386.rpm is not installed
# rpm -ivh compat-db-4.2.52-5.1.i386.rpm
# rpm -qa |grep control-center
control-center-2.16.0-16.el5 //组件已经安装
# rpm -qa |grep gcc
compat-libgcc-296-2.96-138 //组件已经安装
libgcc-4.1.2-46.el5
gcc-4.1.2-46.el5
gcc-gfortran-4.1.2-46.el5
gcc-c++-4.1.2-46.el5
# rpm -qa |grep glibc
glibc-headers-2.5-42 //组件已经安装
glibc-2.5-42
glibc-common-2.5-42
glibc-devel-2.5-42
# rpm -qa |grep libstdc++
libstdc++-devel-4.1.2-46.el5 //组件已经安装
compat-libstdc++-296-2.96-138
libstdc++-4.1.2-46.el5
compat-libstdc++-33-3.2.3-61
# rpm -qa |grep make
automake16-1.6.3-8 //组件已经安装
automake15-1.5-16
automake17-1.7.9-7
make-3.81-3.el5
automake14-1.4p6-13
automake-1.9.6-2.1
imake-1.0.2-3
# rpm -qa |grep pdksh
//没有安装,安装该组件
# rpm -ivh pdksh-5.2.14-36.el5.i386.rpm
# rpm -qa |grep sysstat
//没有安装,安装该组件
# rpm -ivh sysstat-7.0.2-3.el5.i386.rpm
# rpm -qa |grep setarch
setarch-2.0-1.1 //组件已经安装
注意:除此之外,为了保证后面的安装正确进行,还需要安装以下组件。
# rpm -ivh libXp-1.0.0-8.1.el5.i386.rpm
第三步:添加帐号
//添加所需系统组和用户
# groupadd dba
# groupadd oinstall
# groupadd oper
//创建一个oracle软件使用的帐号
#useradd -g oinstall -G dba,oper oracle
第四步:修改系统相关文件
//修改系统控制文件
# vim /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
//修改文件限制
# vim /etc/security/limits.conf
//在末尾添加以下信息
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
//修改登录验证模块
#vim /etc/pam.d/login
//在末尾添加以下信息
session required /lib/security/pam_limits.so
session required pam_limits.so
//修改配置文件
# vim /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
//可参考如下位置
//创建相关文件夹,并修改权限、所属者等属性。
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oracle/
# chmod -R 755 /u01/app/oracle/
# mkdir /u01/flash_recovery_area
# chown oracle:oinstall /u01/flash_recovery_area/
# chmod 775 /u01/flash_recovery_area/
//以上文件夹的命名方法是Oracle官方建议的写法。可参考如下:
# mkdir -p /mount_point/app/oracle_sw_owner
# chown -R oracle:oinstall /mount_point/app/oracle_sw_owner
# chmod -R 775 /mount_point/app/oracle_sw_owner
# mkdir /mount_point/flash_recovery_area
# chown oracle:oinstall /mount_point/flash_recovery_area
# chmod 775 /mount_point/flash_recovery_area
第五步:使用Oracle账户,配置文件。
# su – oracle
//修改bash配置文件
$ vim .bash_profile
//在末尾添加如下信息:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/10.2.0
export ORACLE_SID=phoenix
//执行配置文件
$ . .bash_profile
$ env | grep ORA
ORACLE_SID=phoenix //生效
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/10.2.0
第六步:测试图形界面
//使用root身份执行xhost授权操作,之后,使用oracle身份测试图形界面。
第七步:使用Oracle账户安装
//切换到root身份,卸载现有光盘,重新装载Oracle安装光盘
//切换到oracle身份,进行相关安装
//注意,如果前面的步骤中,您没有安装libXp-1.0.0-8.1.el5.i386.rpm,此时将会出现以下错误:
//此时,您需要ctrl+c终止,再次切换到root身份,重新挂载光盘,安装相应组件
//安装完成之后,卸载当前光盘,挂载Oracle安装光盘,继续安装。
//完成之后,您可以看到以下界面。如果您再前面的步骤中已经安装了libXp-1.0.0-8.1.el5.i386.rpm,那么上面的报错不会出现,您将直接看到以下界面。
//选择下一步
//等待安装完成后,选择下一步
//选择yes
//选择安装
//进行到这一步,您可以喝杯咖啡等待了。
//ok
//切换到root身份,执行如下操作
//完成,退出
第八步:完成其它配置
//切换到oracle身份,进行相关操作
# su – oracle
$ netca
-bash: netca: command not found
//netca命令执行失败,需要修改配置文件,添加上环境变量
$ vim .bash_profile
//添加以下信息
export PATH=$ORACLE_HOME/bin:$PATH
$ . .bash_profile
$ lsnrctl status
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 08-FEB-2012 05:03:28
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
//再次执行netca命令
$ netca
//将会弹出如下画面
//选择监听器配置
//添加网络监听器
//名称
//协议
//端口,可以自定义
//是否想要再添加其它监听器
//下一步
//完成
//查看状态
//刚开始安装时候,出于节省时间考虑取消了创建数据库配置,以下将进行创建数据库等配置。
//使用oracle身份,执行dbca命令,继续配置数据库
创建数据库
//选择General Purpose选项
//写出全局数据库的名称和sid名称
//勾选使用企业管理器配置数据库选项
//输入数据库的管理密码,当让也可以自定义,为不同的账户使用不同的密码
//选择文件系统
//选择从模版中应用
//定义闪存区域
//实例方案配置
//内存配置
//大小配置
//字符集的配置
//连接模式
//控制文件
//数据文件
//Log文件
//选择创建数据库文件
//密码管理
第九步:测试
使用本机测试
//执行sqlplus命令
//使用scott用户登录
//试试查询功能
//使用另一台主机作为客户端,通过浏览器访问
//不过按钮显示不正常,需要添加上英语的支持
//这样就显示正常多了
//可以进行相关管理
至此,Oracle的安装已经基本完成。