如何安装oracle? 你也许会说这还不简单,直接安装就好了么。的确,在windows 平台下安装oracle很简单,但是在linux 平台下这可就是个问题。我第一次安装时费了很大周折才安装好,后来陆续又装了几次才搞明白是怎么回事。俗话说难者不会,会者不难,安装oracle的过程其实是一个熟悉linux系统和学习linux命令的过程。如果你对linuxi系统很熟悉,安装也许不是件难事,但如果不熟悉那就相当痛苦了。 为了让没有经验的人避免再走弯路,特将安装过程记录下来,方便大家参考。
此文档参考了部分网络上的资料。
系统版本说明
操作系统版本:CentOS release 5.5 (Final)-64bit
数据库版本:oracle_11g_release2
数据库文件:
linux.x64_11gR2_database_2of2
操作系统必须安装图形界面,在安装操作系统的时候选择安装界面gnome
安装oracle 可以分为以下几个步骤依次进行:
1) 配置内核参数
2) 系统配置
3) 创建系统用户
4) oracle安装
5) 创建监听服务
6) 创建数据库
7) 添加数据库到监听服务
8) 启动监听服务
9) 后续操作
一、配置内核参数
1. 更改操作系统标志
oracle不支持CentOS平台,需要更改操作系统标识以绕开oracle 安装时的检测
# vim /etc/redhat-release
将CentOS release 5.5 (Final) 改为redhat-4
备注:安装完oracle之后记着将其改回
2. 设置内核参数
在文件/etc/sysctl.conf末尾添加如下内容:
kernel.shmall =2097152 # 共享内存的总量
kernel.shmmax =2147483648 # 最大共享内存的段大小
kernel.shmmni = 4096 # 整个系统共享内存端的最大数
# semaphores: semmsl, semmns, semopm, semmni
# 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;
# 每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
kernel.sem = 250 32000100 128
fs.file-max = 65536# 系统中所允许的文件句柄最大数目
net.ipv4.ip_local_port_range= 1024 65000# 应用程序可使用的IPv4端口范围
net.core.rmem_default=262144 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max=262144# 套接字接收缓冲区大小的最大值
net.core.wmem_default=262144# 套接字发送缓冲区大小的最大值
net.core.wmem_max=262144# 套接字发送缓冲区大小的最大值
内核参数生效
# sysctl -p
3. 相关解释
fs.file-max为512 乘以 processes (如128个process则为 65536);
net.ipv4.tcp_rmem/net.ipv4.tcp_wmem两个参数一般情况下无需设置, 除非是在Dataguard/Streams等需很多网络传输情况下;其它参数根据官方文档要求设置即可.
kernel.shmmax 的单位是字节;kernel.shmall的单位是页。对于32位系统,一页=4k,也就是4096字节。
kernel.shmall = 2097152 就是 2097152*4k/1024/1024 =8G 就是说可用共享内存一共8G。
#设置的一般规律
#kernel.shmall = 2097152 ---内存8G
#kernel.shmall = 4194304 ---内存16G
#kernel.shmall = 8388608 ---内存32G
#kernel.shmall = 16777216 ---内存64G
二、系统配置
1. 修改操作系统主机名
# vim /etc/hosts
在localhost 后面添加oracle_server
# vim /etc/sysconfig/network
将HOSTNAME等号后面改为:oracle_server
2. 添加用户限制
# vim /etc/security/limits.conf, 在末尾添加
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
3 安装相关依赖安装包
相关依赖包比较多,在此就不一 一列举,在安装过程中oracle会在界面上提示缺少哪些rpm包,根据提示信息再进行安装,做到有的放矢。如何安装依赖包,有多种方式:
手动安装
从网上下载依赖包进行安装,而我们不并清楚rpm 包之间的依赖关系,如果每个包都从网上搜索、下载、安装,肯定会被rpm安装包之间的相互依赖关系搞疯掉,很容易让人半途而废, 所以我们采用yum安装的方式。
yum 方式
yum 会分析包之间的依赖关系,自动将有依赖关系的包全部安装。yum有三种配置方式:本地文件,ftp 方式,http 方式。三种方式可以任选一种,在这我只简单说明两种。
1. 本地文件
将镜像文件CentOS-5.5-x86_64-bin-DVD-1of2 拖到/opt 目录下
挂载镜像文件: # mount CentOS-5.5-x86_64-bin-DVD-1of2 /mnt -oloop,ro
修改yum 配置 # mv /etc/yum.respo.d /etc/yum.respo.d.bak
# vim/etc/yum.conf ,在末尾添加:
[local]
name=local
baseurl=file:///mnt
pgcheck=0
更新配置:yum update
出现了更新的提示后,说明配置成功。
2. ftp方式
配置ftp 服务器
1) 安装vsftp ,并添加到系统服务中让vsftpd开机启动
# rpm -ivh vsftpd-2.0.5-16.el5_5.1.x86_64.rpm
# chkconfig --add vsftpd
# chkconfig --level 345 on
2) 修改ftp配置文件
# vi /etc/vsftpd/ftpusers 将其中第二行的root注释掉
# vi /etc/vsftpd/user_list 将其中第七行的root注释掉
3) 将镜像文件移到服务器上,挂在到/var/ftp/pub下,方法如本地文件所述。
4) 重启ftp服务
5) 安装createrepo
# rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm
6) 生成相关的软件包数据库
# createrepo /var/ftp/pub
配置yum 客户端
修改yum 配置
# mv /etc/yum.respo.d /etc/yum.respo.d.bak
# vim/etc/yum.conf ,在末尾添加:
[ftp]
baseurl=ftp://10.32.2.105/pub
pgcheck=0
修改完毕保存
更新yum
# yumupdate
三、创建系统用户
创建用户组
# groupadd oinstall
# groupadd dba
创建用户
# useradd -g oinstall -G dba oracle
# passwd oracle
配置用户环境
切换到oracle 用户:su - oracle
#vim /home/oracle/.bash_profile ,在文档末尾添加如下内容
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/11g
export ORACLE_SID=auditdb
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
配置 vnc(可选)
以上操作都可以通过ssh 工具远程登录到服务器上进行操作, 但是安装oracle数据库需要图形界面的支持,命令行的形式肯定行不通了,除非你到机房在服务器端进行安装。如果你想在远程登录进行进行安装怎么办?在windows上可以通过远程桌面的方式,登录到远端的window服务器,但在linux下有没有类似的工具呢?有,肯定有,开源的力量是无穷的。我们可以通过vnc 来进行远程访问或者putty+xming 的方式,在这采用vnc 来进行远程登陆,vnc 是什么东东,在这我不多做解释,如果感兴趣以google一下。
oracle服务器配置vnc
还记得刚才配置的yum吗?是它大显身手的时候了。
# yum search vnc #查询vnc 相关包
Loaded plugins:fastestmirror
Loading mirror speeds fromcached hostfile
================Matched:vnc===========================
............................................................可爱的省略线......................................................................
vnc.x86_64 : A remotedisplay system.
vnc-server.x86_64: A VNC server.
# 选择安装vnc 服务器端包
# yum install vnc-server.x86_64
Loaded plugins:fastestmirror
Loading mirror speeds fromcached hostfile
Setting up Install Process
Package vnc-server-4.1.2-14.el5_3.1.x86_64already installed and latest version
Nothing to do
之前我已经安装了vnc, 所以在这已经安装了,如果你没有安装,则会进行安装。
安装完之后,配置vnc
# vncserver :1 // 1为桌面号 用指定桌面号启动vnc,根据提示输入密码。
# vim ~/.vnc/xstartup 将以下两行注释取消
unset SESSION_MANAGER
exec/etc/X11/xinit/xinitrc
# vim /etc/sysconfig/vncservers 取消注释,并更改为:
VNCSERVERS="1:root" //原来内容是2:myusername
VNCSERVERARGS[1]="-geometry800x600"
//原来内容是"-geometry800*600 -nolisten -nohttpd -localhost"
# service vncserver start //启动vnc 服务
PC客户端配置
点击如下链接下载vnc viewer进行安装
http://www.realvnc.com/products/free/4.1/winvncviewer.html
安装完之后,打开在对话框中输入10.32.2.105:1,如下:(10.32.2.105) 是oracle服务器地址
如后会提示输入密码,输入之前设置的密码
至此,vnc 已经配置好了,你可以从自己的电脑上看到了服务器的桌面了。如果提示连接被拒绝,关闭服务器防火墙和selinux
注意:如果你通过vnc viewer 来安装orale,进入到服务器的桌面后,要用root权限执行xhost + , 否则oracle 权限安装oracle时可能会报错,无法看到安装界面。
四、oracle安装
数据库安装:(使用root权限)
1. 解压文件
将两个oracle安装文件 用winscp 拖到oracle 服务器的/opt 目录,解压文件
# unzip linux.x64_11gR2_database_1of2
# unziplinux.x64_11gR2_database_2of2
2. 创建文件夹
#mkdri -p /opt/oracle
#mkdir -p /opt/oraInventory
3. 更改相关权限
# chown -R oracle:oinstall /opt/oracle
# chown -R oracle:oinstall /opt/oraInventory
# chown -R oracle:oinstall /opt/database
4. 进入安装目录
# 进入到安装目录
# cd /opt/database
# 切换到oracle用户
# su - oracle
# 执行脚本进行安装
$ sh ./runInstaller.sh
安装过程如下:
在上图片中,oracle自检测,将检测结果展现出来,其中包含了没有安装的依赖包和不满足条件的内核参数,根据提示修改相关系统配置。
如果没有安装相关的依赖包,可以使用如下方法进行安装:
a. 搜索依赖包unixODBC:(root 权限)
# yum search uinxODBC // 会罗列出所有相关的包,查找对应的包安装
b. 安装相应的依赖包
# yum install unixODBC.x86_64
如果是Kernel Parameters 参数没有配置正确,参考内核配置信息重新进行配置
安装完毕后退回上一步,再点下一步重新进行检测,直到所有依赖包和内核参数都被配置好
数据库安装的相关信息在如商标,点击Finish 进行安装。
此时数据库安装成功, 安装结束后提示: 使用root 权限执行脚本root.sh 来配置PATH变量 和/etc/oratab等, 回车即可。
# sh root.sh 即可
五、创建监听服务
在创建数据库的之前,需要先创建监听服务,使用命令netca 创建监听服务。
oracle权限执行命令netca创建监听服务listener
$ netca
选择 listener configuration
为监听服务起个名字
选择通信协议
选择监听端口,默认端口1521
询问是否配置另一个监听端口,选择否
监听服务配置成功。
六、创建数据库
命令: dbca
$ dbca
七、添加数据库到监听服务
配置监听服务 netmgr 命令
oracle权限,执行netmgr命令,调出配置界面
右边下拉框选择Dababase Services,输入数据库信息即可。
八、启动监听服务
oracle权限执行lsnrctl start
到此,oracle 数据库安装成功,并建立数据库auditdb, 创建了监听服务audit_listener.
九、后续操作
# vim /etc/redhat-release
将redhat-4改回 CentOS release 5.5 (Final)