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
创建表空间:
创建表并插入数据: