CentOS 安装Oracle 11g R2

来源:互联网 发布:网络电视直播江苏卫视 编辑:程序博客网 时间:2024/04/30 15:40

最近配置项目的测试系统需要安装oracle,网上找了几个比较好的教程分享一下

参考地址:http://www.osyunwei.com/archives/5445.html

Oracle数据库版本:linux_11gR2_database

Windows客户端系统:Windows Xp

具体操作:

系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

一、在Linux服务器操上安装图形界面X Window

1、在Linux上安装图形界面服务端程序X Window

yum groupinstall "X Window System" #安装X Window


2、vi /etc/gdm/custom.conf #配置,修改添加以下代码

[security]

AllowRemoteRoot=true

[xdmcp]

Port=177

Enable=1

:wq! #保存退出

3、vi /etc/inittab #编辑

id:5:initdefault: #修改3为5

:wq! #保存退出

4、vi /etc/sysconfig/iptables  # 编辑,添加以下代码,开启防火墙UDP 177端口

-A INPUT -m state --state NEW -m udp -p udp --dport 177 -j ACCEPT

:wq! #保存退出

service iptables restart #重启

gdm-restart #重启

shutdown -r now #重启系统

二、在Windows客户端系统上安装Xmanager

1、下载安装Xmanager Enterprise 3

http://www.onlinedown.net/soft/32684.htm #英文原版

http://www.downxia.com/downinfo/19164.html #汉化包

2、下载安装软件之后,打开Xmanager Enterprise


3,再打开Xbrowser,如下图所示:

在地址栏输入192.168.21.150 点转到,出现下面界面, 我这里使用的Xstart界面如下:


协议选择SSH


输入服务器IP用户名root,再输入密码,选择执行命令GNOME,

 

点击确定,会看到弹出命令执行等待片切会出现下面界面


登录成功!

三、在Linux服务器操作系统上准备Oracle数据库安装前的工作

1、下载Oracle 11g R2 Linux版本

http://download.oracle.com/otn/linux/oracle11g/R2/linux_11gR2_database_1of2.zip #下载地址

http://download.oracle.com/otn/linux/oracle11g/R2/linux_11gR2_database_2of2.zip

注意:Oracle 11g R2 Linux版本有两个压缩文件包,都需要下载(下载时需要先注册登录)

下载完成之后,通过WinSCP等工具把两个压缩文件包上传到Linux服务器的/usr/local/src目录中,如下图所示:我这里使用Xshell工具上传


2、在Linux服务器上创建oracle数据库安装目录

mkdir -p /data/oracle #oracle数据库安装目录

mkdir -p /data/oraInventory #oracle数据库配置文件目录

mkdir -p /data/database #oracle数据库软件包解压目录

3、创建运行oracle数据库的系统用户和用户组

groupadd oinstall #创建用户组oinstall

groupadd dba #创建用户组dba

useradd -g oinstall -g dba -m oracle #创建用户oracle,并加入oinstall和dba用户组

passwd oracle #设置用户oracle的登录密码,根据提示输入两次密码

chown -R oracle:oinstall /data/oracle #设置目录所有者为oinstall用户组的oracle用户

chown -R oracle:oinstall /data/oraInventory

chown -R oracle:oinstall /data/database

4、修改操作系统标识(oracle默认不支持CentOS系统安装)

vi /etc/redhat-release #编辑

把:CentOS release 5.8 (Final)

修改为:redhat-4

:wq! #保存退出

5、设置系统内核参数

vi /etc/sysctl.conf #编辑,在最后添加以下代码

net.ipv4.icmp_echo_ignore_broadcasts = 1

net.ipv4.conf.all.rp_filter = 1

fs.file-max = 6815744 #设置最大打开文件数

fs.aio-max-nr = 1048576

kernel.shmall = 2097152 #共享内存的总量,8G内存设置:2097152*4k/1024/1024

kernel.shmmax = 2147483648 #最大共享内存的段大小

kernel.shmmni = 4096 #整个系统共享内存端的最大数

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500 #可使用的IPv4端口范围

net.core.rmem_default = 262144

net.core.rmem_max= 4194304

net.core.wmem_default= 262144

net.core.wmem_max= 1048576

:wq! #保存退出

sysctl -p #使配置立即生效

此处不设置在安装oracle时会报 semopm、file-max等错误

This is prerequisite condition to test whether the OS kernel parameter "semopm" is properly set. (more details)

Expected Value 100

Actual Value 32

This is prerequisite condition to test whether the OS kernel parameter "file-max" is properly set. (more details)

This is prerequisite condition to test whether the OS kernel parameter "ip_local_port_range" is properly set. (more details)

 

This is prerequisite condition to test whether the OS kernel parameter "aio-max-nr" is properly set. (more details)

6、设置oracle用户限制,提高软件运行性能

vi /etc/security/limits.conf #在末尾添加以下代码

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

:wq! #保存退出

7、配置用户环境

vi /home/oracle/.bash_profile #在最后添加以下代码

export ORACLE_BASE=/data/oracle #oracle数据库安装目录

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #oracle数据库路径

export ORACLE_SID=orcl #oracle启动数据库实例名

export ORACLE_TERM=xterm #xterm窗口模式安装

export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量

export LANG=C #防止安装过程出现乱码

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题

:wq! #保存退出

source .bash_profile #使设置立刻生效

8、关闭SELINX

vi /etc/selinux/config #编辑配置文件

#SELINUX=enforcing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

:wq! #保存退出

9、配置防火墙开启1521端口

vi /etc/sysconfig/iptables #编辑防火墙配置文件,添加以下内容

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT

/etc/init.d/iptables restart #重启防火墙使配置生效

10、解压oracle压缩文件到解压目录

cd /usr/local/src #进入目录

unzip linux_11gR2_database_1of2.zip -d /data/database #解压

unzip linux_11gR2_database_2of2.zip -d /data/database #解压

chown -R oracle:oinstall /data/database/database

11、安装oracle数据库所需要的软件包

yum install gcc* gcc-* gcc-c++-* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-*

四、安装oracle

1、在Windows客户端运行Xmanager,登录到Linux服务器的 X window界面,如下图所示:

2、切换到oracle用户

su – oracle

export DISPLAY=192.168.40.160(本地IP):0.0

xhost +

#用w命令查看,根据自己系统显示的结果填写

输入以上命令时本地电脑提示 xhost:  unable to open display ""

解决这个问题首先 export DISPLAY=本地IP:0.0 ,然后在执行xhost + 弹出下面提示说明成功。


cd /data/database/database #进入安装包目录

./runInstaller #安装,出现下面界面


耐心等待一会,出现下面的界面


Emial:默认不用填写

取消:“我希望通过My Oracle Support接收安全更新”前面的勾,不接收更新,点Next


提示是否不接收安全更新通知,选择Yes

Next


选择第二项,仅安装数据库软件

Next


选择第一项,单实例数据库安装

Next


语言选项,默认英语即可

Next


选择第一项:企业版

Next


因为硬盘挂载在data目录下所以选择data

Oracle数据库基目录:/data/oracle

Oracle软件安装位置:/data/oracle/product/11.2.0/db_1

Next

 

Oracle配置文件目录:/data/oraInventory

Nex


Oracle数据库运行组,默认即可

Next


进行安装前系统环境监测

注意:如果有某一项未监测通过,请根据提示做相应修改,知道监测全部通过为止,否则不能进行下一步安装

全部监测通过之后,点Cancel


This is a prerequisite condition to test whether the package "pdksh-5.2.14" is available on the system

需要下载pdksh-5.2.14的安装包安装其他依赖的安装包均为32位包,系统中均已安装64位包

列出oracle安装清单

选择ignore,next


点击finish正在安装,请耐心等待


点OK


启动另一个窗口切换回登入到root用户分别执行:

/data/oraInventory/orainstRoot.sh

/data/oracle/product/11.2.0/db_1/root.sh

直接回车


直到安装完成,点Close

五、配置监听程序(创建数据库之前必须要先配置)

继续在Windows客户端运行Xmanager,登录到Linux服务器的 X window界面

su - oracle #切换到oracle用户

netca #配置监听程序命令,出现下面界面


选择第一项:监听程序配置

Next


选择第一项:添加

Next


监听程序名,默认即可

Next


协议配置,默认TCP即可

Next


选择第一项:使用标准端口号1521

Next


询问:是否配置另一个监听程序

选择:否

Next


监听程序配置完成,Next


Finish完成


六、创建Oracle数据库实例orcl

继续在Windows客户端运行Xmanager,登录到Linux服务器的 X window界面

su - oracle #切换到oracle用户

dbca #启动oracle实例安装界面,如下图所示


Next


选择第一项:创建数据库

Next


默认选择第一项:一般用途或事务处理

Next


系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

全局数据库名:orcl

SID:orcl (需要跟环境变量中的SID保持一致)

Next


默认即可,Next


口令配置,可以为每个账户设置不同的口令,也可以为所有账户设置一个相同的口令

选择第二项:所有账户使用同一管理口令

Next


如果口令设置的太简单,不满足Oracle口令的复杂性要求,会弹出上面的界面,可以选择是,或者选择否,然后返

口令设置,重新设置一个复杂的口令。

存储类型:文件系统

存储位置:使用模版中的数据库文件位置

Next


默认选择:指定快速恢复区

Next


快速恢复区大小设置,如果系统剩余空间小于设置值会出现上面的提示

默认,Next

Next


切换到调整大小:进程300(可以根据服务器配置设置)


切换到字符集设置


选择第三项:从字符集列表中选择

选择:ZHS16GBK- GBK 16-bit Simplified Chinese

国家字符集:AL16UTF16-Unicode UTF-16 Universal character set

默认语言:Simplified Chinese

默认地区:China


切换到连接模式,选择:专用服务器模式

Next


全部设置完成之后,点Finish


勾选:创建数据库

勾选:生成数据库创建脚本

点Finish


系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

Ok


Ok


Ok

注意:这里如果出现上面的提示,可以等安装完成之后用root账号登录,执行下面两个命令

/data/oracle/product/11.2.0/db_1/root.sh

/data/oraInventory/orainstRoot.sh

生成/etc/oratab文件

正在创建数据库 运行到85%会弹出个窗口


数据库创建完成,点Exit退出

七、启动oracle数据库

su - oracle #切换到oracle用户

sqlplus /nolog #进入sqlplus

conn / as sysdba #以超级管理员权限登录

startup #启动数据库实例

quit #退出

lsnrctl start #启动监听

startup参数说明:

startup #不带任何参数,启动数据库实例并打开数据库,一般选择这种启动方式

startup nomount #只启动数据库实例,不打开数据库,一般用于创建新的数据库时使用

startup mount #启动数据库实例,并加载数据库,但不打开数据库,一般用于修改数据库名称等管理时使用

八、关闭oracle数据库

su - oracle #切换到oracle用户

lsnrctl stop #关闭监听器

sqlplus /nolog #进入sqlplus

shutdown immediate #关闭数据库实例

quit #退出

shutdown参数说明:

normal #等待所有的用户断开连接,执行命令后不允许新连接

immediate #等待用户完成当前的语句后,再断开用户连接,不允许新用户连接

transactional #等待用户完成当前的事务后断开连接,不允许新用户连接

abort #强行断开连接并直接关闭数据库

前面三种方法不会导致数据库出错,最后一种方法非特殊状况不建议使用,

一般使用shutdown immediate关闭数据库

备注:如果执行shutdown immediate出现ORA-01012: not logged on错误

请先执行以下语句

ps -ef|grep ora_dbw0_$orcl

kill -9 pid #pid为进程号

其中orcl 是数据库的SID

九、设置oracle开机启动

说明:linux下默认安装完Oracle后不会实现开机自启动

1、su - root #切换到root用户操作

/data/oracle/product/11.2.0/db_1/root.sh #执行脚本,生成/etc/oratab文件

/data/oraInventory/orainstRoot.sh

 2、vi /etc/oratab  #编辑

找到:$ORACLE_SID:$ORACLE_HOME:<N|Y>:

取消前面的#注释,修改为:

orcl:/data/oracle/product/11.2.0/db_1:Y  #orcl为oracle数据库实例名称

:wq! #保存退出

3、vi /data/oracle/product/11.2.0/db_1/bin/dbstart #编辑

找到:ORACLE_HOME_LISTNER=$1

修改为:ORACLE_HOME_LISTNER=$ORACLE_HOME

4、vi /data/oracle/product/11.2.0/db_1/bin/dbshut #编辑

找到:ORACLE_HOME_LISTNER=$1

修改为:ORACLE_HOME_LISTNER=$ORACLE_HOME

5、创建oracle启动脚本

vi /etc/init.d/oracle #编辑,添加以下代码
##########################################################
#!/bin/sh
# chkconfig: 0356 99 10
# description: Startup Script for Oracle Databases
# Script path:/etc/init.d/oracle
# Author:www.osyunwei.com by qihang01
#
ORACLE_BASE=/data/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl
PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
#
ORA_OWNR="oracle"
#
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
#
case "$1" in
start)
su - $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
echo "Oracle Start Succesful!"
;;
stop)
#
su - $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
echo "Oracle Stop Succesful!"
;;
restart)
$0 stop
$0 start
;;
*)
echo $"Usage: `basename $0` {start|stop|restart}"
exit 1
esac
exit 0
##########################################################

:wq! #保存退出

chown oracle.oinstall /etc/init.d/oracle #更改文件所有者

chmod 755 /etc/init.d/oracle #添加执行权限

ln -s /etc/init.d/oracle /etc/rc3.d/S99oracle #添加系统启动级别3软连接

ln -s /etc/init.d/oracle /etc/rc5.d/S99oracle #添加系统启动级别5软连接

ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle #添加系统关机软连接

ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle #添加系统重启软连接

chkconfig --add oracle #添加系统服务

chkconfig oracle on #设置开机启动

备注:# chkconfig: 0356 99 10

0356:定义运行级别

99:开机启动优先级(数字越大启动越晚)

10:关机停止优先级(数字越小关闭越早)

系统运维 www.osyunwei.com 温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

6、恢复操作系统标识

vi /etc/redhat-release #编辑

把:redhat-4

修改为:CentOS release 5.8 (Final)

:wq! #保存退出

7、更改系统默认启动级别为3

vi /etc/inittab #编辑

id:3:initdefault: #修改5为3

:wq! #保存退出

8、测试

shutdown -r now #重启系统

service oracle start #启动oracle

service oracle stop #关闭oracle

/etc/init.d/oracle restart #重启oracle

su - oracle #切换到oracle用户

dbstart #启动oracle

dbshut #关闭oracle

ps -efw | grep ora #查看oracle进程

ps -efw | grep LISTEN | grep -v gre #查看oracle端口监听

lsnrctl status #查看oracle运行状态

至此,CentOS下安装Oracle 11g R2教程完成。

扩展阅读:

使用vnc远程连接来安装Oracle,如果出现错误,不能启动安装界面,请做以下操作!

用 root ssh登录

vncserver #启动vnc

New 'www:1 (root)' desktop is www:1   #记住www:1,后面会用到!

export DISPLAY=www:1 #输入

service vncserver start #启动vnc

使用vnc客户端 root 登录

xhost +

su - oracle  #切换到oracle用户

./runInstaller #执行安装

0 0
原创粉丝点击