centOS-oracle安装

本文提供了一份详细的CentOS环境下Oracle 11g数据库安装指南,包括配置yum源、安装依赖包、设置系统参数等步骤,并附带了解决常见问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

centOS下oracle11g安装:
http://wenku.baidu.com/link?url=RM4uMf2L33hmL9GmiTAlc8GRmqlur0v1AzEqM3q8R74N7A148Pfn6a9Mv4OrfAjU1WSW3_xmrxHFij-12qgrH79d9Y7DT-R29g4CiYnZTOu
http://wenku.baidu.com/link?url=ZS1NaDRMpiAQHcC0rUNqinXBGo2-Qd3ulHb7pCnApI1XYuofAcJIJ3uv7ZygZ07Ww6QHzabVLkhcWk45aH-f9bN9UQMuclRTZvsKalp0Bz7

yum源: http://pkgs.org/#centos-6-rhel-6

一、配置yum
http://www.cnblogs.com/mchina/archive/2013/01/04/2842275.html
一般来说,centOS6.5安装好后,yum就是安装好的,因此只需要配置一下yum源。
1、挂载centOS系统安装光盘
2、配置本地yum源
# cd /etc/yum.repos.d/
# ls
会看到如下四个repo文件:

其中:
CentOS-Base.repo是yum网络源的配置文件
CentOS-Media.repo是yum本地源的配置文件
修改CentOS-Media.repo
将enabled=0修改为1
3、禁用默认的yum网络源
将yum网络源配置文件改名为CentOS-Based.repo.bak,否则会先在网络源中寻找适合的包,改名之后则会直接从本地源读取。

 

二、安装oracle11g
1、查看操作系统内核版本(root用户操作)
11g支持oracle linux 5、6 (x86-64)和Red hat linux5、6 (x86-64) 
内核支持2.6.32-xxxxxx及以上版本 
# cat /etc/redhat-release  
CentOS release 6.5 (Final) 
# uname -r 
2.6.32-431.1.2.0.1.el6.x86_64

2、安装11g所需依赖包(root用户操作)
# yum install binutils compat-libcap1 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 unixODBC unixODBC-devel ksh

另一篇文档中看到说要安装图形界面,已经是图形界面的,不需要安装(但是以下的只有最后一个我安装成功了)
yum -y groupinstall "Java Development"
yum -y groupinstall "X Window System"
yum -y groupinstall "GNOME Desktop Environment"
yum -y install vnc-server 

注:rhel6官方需求为以下包
binutils-2.20.51.0.2-5.11.el6 (x86_64)  
compat-libcap1-1.10-1 (x86_64)  
compat-libstdc++-33-3.2.3-69.el6 (x86_64) 
compat-libstdc++-33-3.2.3-69.el6.i686 
gcc-4.4.4-13.el6 (x86_64)  
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686) 
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64) 
glibc-devel-2.12-1.7.el6.i686 
ksh  
libgcc-4.4.4-13.el6 (i686) 
libgcc-4.4.4-13.el6 (x86_64) 
libstdc++-4.4.4-13.el6 (x86_64) 
libstdc++-4.4.4-13.el6.i686  
libstdc++-devel-4.4.4-13.el6 (x86_64) 
libstdc++-devel-4.4.4-13.el6.i686 
libaio-0.3.107-10.el6 (x86_64) 
libaio-0.3.107-10.el6.i686  
libaio-devel-0.3.107-10.el6 (x86_64) 
libaio-devel-0.3.107-10.el6.i686 
make-3.81-19.el6  
sysstat-9.0.4-11.el6 (x86_64)

3、修改主机名(root用户操作)
特别注意 /etc/sysconfig/network中的hostname要与/etc/hosts中的一致
# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=CentOS164

4、设置IP与主机名的对应关系(root用户操作)
# vi /etc/hosts
127.0.0.1 localhost
::1 localhost
100.37.2.164  CentOS164
#其中100.37.2.164  CentOS164很重要,如果不配置,会出错。

5、关闭Selinux(root用户操作)——这一步千万不能做,不做应该就不会出现此步中的问题
# vi /etc/selinux/config
SELINUX=disabled    
# 在我安装的时候,由于把SELINUXTYPE修改成了disabled(因为我没看到SELINUX,所以误修改了SELINUXTYPE,结果可能这两个参数都不能修改为disabled)后来导致系统起不来,之后采取以下方式才让系统活过来:
(1) 先让系统活过来
方案一:
系统启动的时候,按下‘e’键进入grub编辑界面,编辑grub菜单,选择“kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/vogroup00/logvol00 rhgb quiet” 一栏,按‘e’键进入编辑,在末尾增加enforcing=0,即:
kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/vogroup00/logvol00 rhgb quiet enforcing=0
按‘b’键继续引导,OK顺利前进。
如果此方法不行就用方案二
方案二:
将方案一中的enforcing=0换成selinux=0
当然要是这么简单我就不写博文了
(2) 系统活过来之后修改下/boot/grub/grub.conf文件,在其中的kernel行后面添加enforcing=0  # 注意两个kernel行后面都要加

注:以上方法参考 http://fuwenchao.blog.51cto.com/6008712/1336629


6、创建用户和用户组(root用户操作)
groupadd oinstall 
groupadd dba  
useradd -g oinstall -G dba -m oracle   #有一篇文档里说第一个问题就出在这里,这里必须要加m
passwd oracle

7、修改内核参数(root用户操作)
以root账户登录各个节点,在/etc/sysctl.conf 文件的末尾添加如下信息来更改内核的一些参数:
# vim /etc/sysctl.conf
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmall = 20185088 
kernel.shmmax = 82678120448
kernel.shmmni = 4096
fs.aio-max-nr = 1048576 
fs.file-max = 6815744 
kernel.sem = 250 32000 100 128 
net.ipv4.ip_local_port_range = 9000 65500 
net.core.rmem_default = 262144 
net.core.rmem_max = 4194304 
net.core.wmem_default = 262144 
net.core.wmem_max = 1048586
# sysctl -p    #重新载入立即生效

注: 一般可将kernel.shmmax 参数设臵为内存的80%,本文中设致为77G,即共享内存的大小为77G。一般将kernel.shmmax 参数的值除以4K(4096)后的值作为kernel.shmall 参数的值。

8、修改系统资源限制(root用户操作)
在 vi/etc/security/limits.conf末尾添加如下
oracle soft nproc 2047 
oracle hard nproc 16384 
oracle soft nofile 1024 
oracle hard nofile 65536 
#oracle soft stack  10240   #这一步我没做,
oracle hard stack 10240   #这一步是小胖文档里的,我做了
出于性能上的考虑,还需要进行以上设定,以便改进Oracle用户的有关nofile(可打开的文件描述符的最大数)和nproc(单个用户可用的最大进程数量) soft是软限制,用户可以超过这个设置的值,但一定不能超过hard 的值。一般soft比hard小。hard是硬限制
vi /etc/pam.d/login  
session required pam_namespace.so  #下面添加一条pam_limits.so  
session required /lib64/security/pam_limits.so  

vi/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

如果用户为oracle,用户shell="/bin/ksh"   
ulimit –p 16384限制管道缓冲区的大小为16384 
ulimit –n 65536表示可以打开最大文件描述符的数量为65536
ulimit – u 16384;限制用户最多可以使用16384个进程

9、创建安装目录及设置权限(root用户操作)
# mkdir /opt/oracle
# mkdir /opt/oracle/app
# mkdir /opt/oracle/oradata
# mkdir /opt/oracle/grid_home
# chmod 755 /opt/oracle
# chmod 775 /opt/oracle/app/
# chown oracle.oinstall -R /opt/oracle

10、设置oracle环境变量(oracle用户操作)
# vi ~/.bash_profile   # suse11里貌似是没有这个文件的,自己建一个吧
export ORACLE_BASE=/opt/oracle/app
export GRID_HOME=/opt/oracle/grid_home
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$GRID_HOME/bin:$ORACLE_HOME/bin:$HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin
export ORACLE_SID=orcl
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export LD_LIBRARY_PATH=/opt/oracle/app/product/11.2.0/dbhome_1/lib:/usr/lib
# export ORACLE_HOME_LISTNER=$ORACLE_HOME    # Oracle安装完成后再反注释此时,再使用命令 lsnrctl start 来启动监听打开Listener,否则在使用DBCA创建库时会报没有打开监听
# umask 022
然后再执行source命令使配置立即生效
# source ~/.bash_profile   #立即生效

11、上传安装包并解压(root用户操作)
mkdir  -p /data
上传安装包到 /data
unzip p10404530_112030_Linux-x86-64_1of7.zip
unzip p10404530_112030_Linux-x86-64_2of7.zip
unzip p10404530_112030_Linux-x86-64_3of7.zip
unzip p10404530_112030_Linux-x86-64_4of7.zip
unzip p10404530_112030_Linux-x86-64_5of7.zip
unzip p10404530_112030_Linux-x86-64_6of7.zip
unzip p10404530_112030_Linux-x86-64_7of7.zip

解压后,/data 目录下存在 database和grid目录

mkdir  /databaseInstall
mv /data/database /databaseInstall
mv /data/grid  /databaseInstall
cd /databaseInstall
chown -R oracle:oinstall database/
chown -R oracle:oinstall grid/

12、使用oracle用户分录并分别安装grid和oracle(oracle用户操作,需注意,请直接以oracle用户登录,不要在root用户下登录oracle)
# xhost +         # 使所有用户都能访问图形桌面,有的时候执行不了可能是XMANEGER的问题,可以先试试执行export DISPLAY=local_host:0.0
使用oracle用户登录,注意,不要在root下登录,要重新开窗口直接以oracle登录

(1) 安装grid
# cd /databaseInstall/grid
为防止oracle安装过程中的中文乱码问题,设置语言为英文
# export LANG=en_US
# export LC_ALL=en_US 

# ./runInstaller
详细步骤参见此文档:Oracle_安装grid.docx

(2) 安装Oracle
详细步骤见此文档:Oracle_安装oracle.docx

13、登录数据库
使用oracle登录
使用sqlplus登录:sqlplus / as sysdba   
此时登上去是还没有实例的,还需要先执行dbca(DataBase Configuration Assistant)来创建数据库实例,SID与之前配置的一致即可。(注:在xshell上使用oracle用户登录执行dbca即可)——请详见“Oracle使用DBCA建立数据库”
注:dbca是图形界面的,另外,若进去后发现是乱码,请将语言设为英语export LANG=en

启动oracle服务:SQL> startup
创建表空间:
创建表并插入数据:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值