CentOS6.5(64位)下,安装Oracle10g

阅读更多



本文绝大部分内容,搬砖自

http://www.cnblogs.com/mchina/archive/2013/03/08/2934473.html

优化代码复制部分,方便复制。我自己加的东西,就是红字的地方。编辑器红不了?没办法了

因为在工作中,对已有项目进行数据迁移,对字符集是有要求的,也是本篇与原创不一样的地方。



一、硬件要求二、软件三、系统安装注意四、安装Oracle前的系统准备工作五、安装Oracle,并进行相关设置六、升级Oracle到patchset 10.2.0.4七、使用rlwrap调用sqlplus中历史命令

一、硬件要求

Minimum: 1 GB of RAMRecommended: 2 GB of RAM or more

检查内存情况
# grep MemTotal /proc/meminfo
# grep SwapTotal /proc/meminfo
2、硬盘

检查磁盘情况
# df -h
CentOS6.5(64位)下,安装Oracle10g_第1张图片


系统平台:CentOS 6.3(x86_64)

Oracle版本:Oracle 10g R2

补丁:p6810189_10204

三、系统安装注意

本文中所描述的系统命令,未经特殊标示,均为“#”代表root权限,“$”代表oracle权限。

首先,请先以root账号登入作一些前置设定作业。

# setup
CentOS6.5(64位)下,安装Oracle10g_第2张图片


修改SELINUX=disabled,然后重启。如果不想重启系统,使用命令setenforce 0

CentOS6.5(64位)下,安装Oracle10g_第3张图片


Oracle官方文档要求的安装
CentOS6.5(64位)下,安装Oracle10g_第4张图片


用yum方式安装所需的包:(已整合原文已知错误)

 

yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat libXp.i686 libXt.x86_64 libXtst.x86_64 libXt.i686 libXtst.i686

 


3、创建Oracle用户与组

执行以下指令以新增oracle安装时所需要的使用者与群组。

 

(1) 建立群组oinstall 

# groupadd oinstall

 

(2) 建立群组dba

# groupadd dba

 

(3) 新增使用者oracle并将其加入oinstall和dba群组

# useradd -m -g oinstall -G dba oracle

 

(4) 测试oracle账号是否建立完成

# id oracle

 

(5) 建立oracle的新密码

# passwd oracle


CentOS6.5(64位)下,安装Oracle10g_第5张图片


# vi /etc/sudoers

CentOS6.5(64位)下,安装Oracle10g_第6张图片

5、配置系统内核参数

 

# vi /etc/sysctl.conf

修改和添加以下内容:



kernel.shmall=4294967296
kernel.shmmax=68719476736
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.ipv4.ip_local_port_range=1024 65000
net.core.rmem_default=4194304
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=262144

 


会有一些与目前的参数重复的,就修改成文件上提供的。
CentOS6.5(64位)下,安装Oracle10g_第7张图片
编辑完之后,储存,然后执行:


启用刚刚所做的变更。
# sysctl -p

CentOS6.5(64位)下,安装Oracle10g_第8张图片


6、编辑/etc/security/limits.conf
# vi /etc/security/limits.conf

 添加以下代码

 

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

 

7、编辑/etc/pam.d/login

# vi /etc/pam.d/login

 

添加以下两行

session required /lib64/security/pam_limits.so
session required pam_limits.so

 

CentOS6.5(64位)下,安装Oracle10g_第9张图片



8、修改/etc/profile

# vi /etc/profile

 

将以下代码新增到profile档案中。在pathmunge()和if [-x /usr/bin/id ]; then 中间

 

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

 

 

CentOS6.5(64位)下,安装Oracle10g_第10张图片


由于Oracle 10g发行的时候,CentOS 6没有发行,所以Oracle 10g并没有对CentOS 6确认支持,需要修改文件让Oracle 10g支持CentOS 6。
我们需要手工修改Linux的发行注记,让Oracle 10g支持CentOS 6。
编辑/etc/redhat-release文件
# vi /etc/redhat-release
将其中的内容CentOS release 6.3 (Final)修改为redhat 4


10、创建Oracle安装文件夹以及数据存放文件夹


# mkdir /opt/oracle

# mkdir /opt/oracle/102

# chown -R oracle:dba /opt/oracle

 



11、配置Linux主机
检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。

# cat /etc/hosts




12、配置oracle用户环境变量

$ cd /home/oracle

$ vi .bash_profile

修改并加入以下內容

 

ORACLE_BASE=/opt/oracle ## 上面创建的Oracle安装文件夹
ORACLE_HOME=$ORACLE_BASE/102
ORACLE_SID=orcl
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH

 

CentOS6.5(64位)下,安装Oracle10g_第11张图片

嗯,由于和原创在这里开始就点不一样了,所以就没用原图。

保存后使用如下命令,使设置生效:

 

$ source /home/oracle/.bash_profile


1、解压缩安装文件

$ cd /opt/oracle

 

解压缩10201_database_linux_x86_64.cpio

 

$ cpio -idmv < 10201_database_linux_x86_64.cpio

 

接着会看到一连串的解压缩动作。

CentOS6.5(64位)下,安装Oracle10g_第12张图片

解压缩完成会在同一个文件夹中看到database的文件夹,请进入到database文件夹中:

 

$ cd database

 

准备执行数据库安装,如果你的centos是中文环境,安装时会出现中文乱码,请下以下指令

 

$ export LANG=en_US

 

接着执行

$ ./runInstaller

如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:
# export DISPLAY=:0.0

# xhost +

$ ./runInstaller

 

如果出现X11的错误

如果是使用VNC的情况下,需要由oracle用户创建vncserver,通过vnc访问(由oracle用户登录)才可以看到界面

CentOS6.5(64位)下,安装Oracle10g_第13张图片



CentOS6.5(64位)下,安装Oracle10g_第14张图片
 
选择Advanced Installation,目标是为了选择字符集,也就只能在这个时候做,如果等数据库生成了,有数据了,再去对字符集做操作,就比较麻烦,而且不稳妥~



CentOS6.5(64位)下,安装Oracle10g_第15张图片
Next...
CentOS6.5(64位)下,安装Oracle10g_第16张图片
NEXT...

CentOS6.5(64位)下,安装Oracle10g_第17张图片
NEXT...
CentOS6.5(64位)下,安装Oracle10g_第18张图片
YES&NEXT 下面创建一个数据库。
CentOS6.5(64位)下,安装Oracle10g_第19张图片

CentOS6.5(64位)下,安装Oracle10g_第20张图片
关键的地方到了,设置对应的数据库字符集(切记,根据自己的项目需要,由于我现在的项目是用gbk的,所以我才。。。)
CentOS6.5(64位)下,安装Oracle10g_第21张图片

CentOS6.5(64位)下,安装Oracle10g_第22张图片



CentOS6.5(64位)下,安装Oracle10g_第23张图片



CentOS6.5(64位)下,安装Oracle10g_第24张图片


CentOS6.5(64位)下,安装Oracle10g_第25张图片


这是oracle安装程序的一个bug,可以忽略此错误继续安装,对系统没什么影响。

OUI-25031:Some of the configuration assistants failed.

CentOS6.5(64位)下,安装Oracle10g_第26张图片


解决:修改/etc/hosts文件,增加IP地址与主机名的映射如下:

CentOS6.5(64位)下,安装Oracle10g_第27张图片


ORA-27125:unable to create shared memory segment

CentOS6.5(64位)下,安装Oracle10g_第28张图片


1. 确定安装oracle所使用的用户组

可以看到oracle组dba id 为501。

echo "501" > /proc/sys/vm/hugetlb_shm_group

 






CentOS6.5(64位)下,安装Oracle10g_第29张图片



安装完成前,出现以下的设置脚本:

开启一个新的终端,su到root。

/opt/oracle/oraInventory/orainstRoot.sh

/opt/oracle/102/root.sh
CentOS6.5(64位)下,安装Oracle10g_第30张图片

执行画面如上图。


CentOS6.5(64位)下,安装Oracle10g_第31张图片


http://CentOS-Oracle:5560/isqlplus

http://CentOS-Oracle:5560/isqlplus/dba

http://CentOS-Oracle:1158/em

CentOS6.5(64位)下,安装Oracle10g_第32张图片


以上画面都成功代表oracle已经正常安装了。

1、升级软件

停止实例

SQL> SHUTDOWN IMMEDIATE

 

停止与该实例相关的所有后台进程

$ emctl stop dbconsole

$ isqlplusctl stop

$ lsnrctl stop


CentOS6.5(64位)下,安装Oracle10g_第33张图片

b. 备份Oracle数据库

将补丁包p6810189_10204_Linux-x86-64.zip解压;进入解压后的目录,执行安装命令。

 

$ ./runInstaller -ignoreSysPrereqs
点击“Next”

CentOS6.5(64位)下,安装Oracle10g_第34张图片






CentOS6.5(64位)下,安装Oracle10g_第35张图片

点击“Next”

点击“Next”

CentOS6.5(64位)下,安装Oracle10g_第36张图片

CentOS6.5(64位)下,安装Oracle10g_第37张图片

升级过程...

 

CentOS6.5(64位)下,安装Oracle10g_第38张图片

 

需要执行脚本/opt/oracle/102/root.sh


CentOS6.5(64位)下,安装Oracle10g_第39张图片


CentOS6.5(64位)下,安装Oracle10g_第40张图片


如果此前并没有创建数据库,那么升级到10.2.0.4到此就结束了。然后可以去创建新的数据库。

2、升级数据库

$ sqlplus / as sysdba;

SQL> STARTUP UPGRADE

SQL> SPOOL patch.log

SQL> @?/rdbms/admin/catupgrd.sql

 

CentOS6.5(64位)下,安装Oracle10g_第41张图片

升级过程比较长,请耐心等待。

CentOS6.5(64位)下,安装Oracle10g_第42张图片

升级完毕,总耗时38分钟26秒。
SQL> SPOOL OFF

CentOS6.5(64位)下,安装Oracle10g_第43张图片

b. 关闭并重启数据库

SQL> SHUTDOWN IMMEDIATE

SQL> STARTUP

 

c. 编译无效PL/SQL包

SQL> @?/rdbms/admin/utlrp.sql

 

CentOS6.5(64位)下,安装Oracle10g_第44张图片


CentOS6.5(64位)下,安装Oracle10g_第45张图片

d. 检查升级是否成功,如果所有组件的status都是valid表示升级成功。

SQL> SELECT COMP_NAME, VERSION, STATUS FROM SYS.DBA_REGISTRY;
CentOS6.5(64位)下,安装Oracle10g_第46张图片

e. 检查是否有升级错误

 

SQL> select * from utl_recomp_errors;




f. 修改系统兼容性参数

SQL> alter system set compatible='10.2.0.4.0' scope=spfile;

 

SQL> SHUTDOWN

SQL> STARTUP


CentOS6.5(64位)下,安装Oracle10g_第47张图片

升级完成。

  在Linux中运行SQL*Plus,不能调用历史命令;输错字符后也不能按Backspace键或Del键删除,虽然可以通过Ctrl+Backspace组合键实现删除功能,但是严重影响使用效率。使用第三方软件rlwrap可以实现以上功能。

7.1 安装rlwrap

rlwrap封装了readline,所以安装rlwrap之前需要安装readline库。可以通过yum方式安装,也可以下载源码包进行安装。官方网站:http://utopia.knoware.nl/~hlub/uck/rlwrap/

CentOS系统默认的yum软件仓库中没有rlwrap这个包,需要通过第三方yum源安装。

# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 

 

默认会在/etc/yum.repos.d/下创建epel.repo和epel-testing.repo两个配置文件。

# yum install rlwrap readline readline-devel

其他Linux发行版如果源里没有rlwrap和readline的(如SUSE企业版默认没有这两个包),要分别下载这两个源码包编译安装一下。

# wget ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz
# tar zxvf readline-6.2.tar.gz
# cd readline-6.2/
# ./configure
# make
# make install

 

b. 安装rlwrap

 

# wget http://utopia.knoware.nl/~hlub/rlwrap/rlwrap-0.37.tar.gz
# tar zxvf rlwrap-0.37.tar.gz
# cd rlwrap-0.37/
# ./configure
# make
# make install

 

7.2 设置sqlplus的系统别名
vim /home/oracle/.bash_profile


在尾部添加:

alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

 
退出oracle用户再重新登录就OK了。现在Linux下的sqlplus用起来就像cmd中一样了。
这个确实挺好用的,终于搬砖成功,感谢原创给了一个这样step by step的教程,希望这些对大家有用。
本文绝大部分内容,搬砖自

http://www.cnblogs.com/mchina/archive/2013/03/08/2934473.html


谢阅~

  • CentOS6.5(64位)下,安装Oracle10g_第48张图片
  • 大小: 49.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第49张图片
  • 大小: 45.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第50张图片
  • 大小: 76.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第51张图片
  • 大小: 52.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第52张图片
  • 大小: 31.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第53张图片
  • 大小: 109.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第54张图片
  • 大小: 85.1 KB
  • CentOS6.5(64位)下,安装Oracle10g_第55张图片
  • 大小: 46.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第56张图片
  • 大小: 52.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第57张图片
  • 大小: 75.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第58张图片
  • 大小: 30.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第59张图片
  • 大小: 64.9 KB
  • CentOS6.5(64位)下,安装Oracle10g_第60张图片
  • 大小: 10.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第61张图片
  • 大小: 69 KB
  • CentOS6.5(64位)下,安装Oracle10g_第62张图片
  • 大小: 40.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第63张图片
  • 大小: 16.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第64张图片
  • 大小: 20.1 KB
  • CentOS6.5(64位)下,安装Oracle10g_第65张图片
  • 大小: 28.3 KB
  • CentOS6.5(64位)下,安装Oracle10g_第66张图片
  • 大小: 59.3 KB
  • CentOS6.5(64位)下,安装Oracle10g_第67张图片
  • 大小: 290.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第68张图片
  • 大小: 166.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第69张图片
  • 大小: 264.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第70张图片
  • 大小: 169.3 KB
  • CentOS6.5(64位)下,安装Oracle10g_第71张图片
  • 大小: 271.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第72张图片
  • 大小: 201.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第73张图片
  • 大小: 219.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第74张图片
  • 大小: 210 KB
  • CentOS6.5(64位)下,安装Oracle10g_第75张图片
  • 大小: 246.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第76张图片
  • 大小: 206.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第77张图片
  • 大小: 292.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第78张图片
  • 大小: 262.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第79张图片
  • 大小: 247.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第80张图片
  • 大小: 129.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第81张图片
  • 大小: 237.8 KB
  • CentOS6.5(64位)下,安装Oracle10g_第82张图片
  • 大小: 105.9 KB
  • CentOS6.5(64位)下,安装Oracle10g_第83张图片
  • 大小: 136.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第84张图片
  • 大小: 27.3 KB
  • CentOS6.5(64位)下,安装Oracle10g_第85张图片
  • 大小: 23.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第86张图片
  • 大小: 133.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第87张图片
  • 大小: 77.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第88张图片
  • 大小: 196.1 KB
  • CentOS6.5(64位)下,安装Oracle10g_第89张图片
  • 大小: 126.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第90张图片
  • 大小: 105.9 KB
  • CentOS6.5(64位)下,安装Oracle10g_第91张图片
  • 大小: 92.8 KB
  • CentOS6.5(64位)下,安装Oracle10g_第92张图片
  • 大小: 48.3 KB
  • CentOS6.5(64位)下,安装Oracle10g_第93张图片
  • 大小: 110.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第94张图片
  • 大小: 106.3 KB
  • CentOS6.5(64位)下,安装Oracle10g_第95张图片
  • 大小: 74.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第96张图片
  • 大小: 89.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第97张图片
  • 大小: 87.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第98张图片
  • 大小: 137 KB
  • CentOS6.5(64位)下,安装Oracle10g_第99张图片
  • 大小: 119.8 KB
  • CentOS6.5(64位)下,安装Oracle10g_第100张图片
  • 大小: 107.1 KB
  • CentOS6.5(64位)下,安装Oracle10g_第101张图片
  • 大小: 51.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第102张图片
  • 大小: 80.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第103张图片
  • 大小: 100.9 KB
  • CentOS6.5(64位)下,安装Oracle10g_第104张图片
  • 大小: 326.4 KB
  • CentOS6.5(64位)下,安装Oracle10g_第105张图片
  • 大小: 105.7 KB
  • CentOS6.5(64位)下,安装Oracle10g_第106张图片
  • 大小: 91.9 KB
  • CentOS6.5(64位)下,安装Oracle10g_第107张图片
  • 大小: 33.6 KB
  • CentOS6.5(64位)下,安装Oracle10g_第108张图片
  • 大小: 132.8 KB
  • CentOS6.5(64位)下,安装Oracle10g_第109张图片
  • 大小: 5.5 KB
  • CentOS6.5(64位)下,安装Oracle10g_第110张图片
  • 大小: 67.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第111张图片
  • 大小: 157 KB
  • CentOS6.5(64位)下,安装Oracle10g_第112张图片
  • 大小: 31.2 KB
  • CentOS6.5(64位)下,安装Oracle10g_第113张图片
  • 大小: 281.7 KB
  • 查看图片附件

你可能感兴趣的:(oracle)