您的位置:首页 > 数据库 > Oracle

Centos6安装oracle

2016-01-16 20:18 381 查看
linux上安装oracle确实还挺不容易的,需要安装相当多的依赖库,倒腾了挺久,终于安装成功,记录下以防以后再此安装,因为实在记不住需要依赖那些库

1,创建oracle用户,用户组及安装目录:

创建oracle用户及用户组

groupadd oinstall #创建用户组oinstall

groupadd dba #创建用户组dba

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

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

创建安装目录
mkdir -p /opt/oracle/app#oracle数据库安装目录

mkdir -p /opt/oracle/app/oracle #oracle数据库配置文件目录

mkdir -p
/opt/oracle/app/oradata

mkdir -p /opt/oraInventory

chown
-R oracle:oinstall /opt/oraInventory

chown -R oracle:oinstall /opt/oracle #将此目录付权给oracle用户 和用户组oinstall

2修改系统标识(oracle默认不支持CentOS系统安装)

vi /etc/redhat-release #编辑

把:CentOS release 6.5 (Final)

修改为:redhat-5
3,配置用户环境
vi /home/oracle/.bash_profile

export PATH

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_SID=orcl

export ORACLE_TERM=xterm #窗口安装模式

export PATH=$ORACLE_HOME/bin:$PATH

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

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

4 关闭SELINX

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

#SELINUX=enforcing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

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

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

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

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

设置DISPLAY

export DISPLAY=192.168.193.110

vi /etc/inittab

id:3:initdefault: #修改3为5(安装桌面系统才能成功启动,若没安装桌面系统安装oracle不起来,安装桌面命令yum
groupinstall -y "Desktop")

6重启系统

shutdown -r now

7 解压oracle的zip包

unzip linux.x64_11gR2_database.zip

如果提示没有unzip命令 ,则安装 yum install -y zip unzip

8 将解压的目录付权给oracle用户

chown -R oracle:oinstall
/opt/linux.x64_11gR2_database

9切换用户

su oracle

10进入执行文件runInstaller所在目录

cd /opt/linux.x64_11gR2_database/database

此时目录下的runInstaller 没有执行权限 ,授权

chmod 755 runInstaller

安装oracle

安装之前 安装依赖的库

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

安装oracle

./runInstaller

此时可能会提示文件/opt/linux.x64_11gR2_database/database/install/.oui没有权限,授权

chmod 755 /opt/linux.x64_11gR2_database/database/install/.oui

chmod 755 /opt/linux.x64_11gR2_database/database/install/unzip

再安装,就会有安装界面了

此时可能还有一个问题,就是如果安装的中文版,此安装界面可能全是乱码,那就先取消安装,执行

export LANG=en_US.UTF-8

再次安装就可以了。

可续安装就根据提示就下一步下一步了。

二,当安装完成之后,创建数据库之前,先设置监听

netca #配置监听程序命令

就会调出监听设置界面

一路下一步至完成


创建Oracle数据库实例orcl

dbca #启动oracle实例安装界面,

按照提示一步一步安装即可

在这一步有四个选项,Character Sets 设置数据库语言 ,前文的环境变量中若设置了,则此步骤需对应





选择:ZHS16GBK- GBK 16-bit Simplified Chinese

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

默认语言:Simplified Chinese

默认地区:China
此后染出的窗口若有 File ‘/etc/oratab’ is not accesssiblei可在结束之后用root执行

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

./opt/oracle/app/product/11.2.0/db_1/root.sh

./opt/oraInventory/orainstRoot.sh

生成/etc/oratab文件即可

四 启动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 #执行安装

参考文章:http://www.cnblogs.com/zhwl/p/3719302.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: