Centos6 下Oracle 11g R2 安装

1准备
CentOS-6.5-x86_64-bin-DVD1
linux_11gR2_database_1of2
linux_11gR2_database_2of2
VMware Workstation 10.0.2
SSH Secure Shell Client
instantclient_11_2
plsqldev1005
2安装虚拟机及CentOS
(1)安装VMware Workstation
(2)安装CentOS,主机命名为:oracledb
(3)磁盘需要大于30G(经验值)
(4)内存必须大于1G(官方要求)
(5)操作系统swap分区大于2G(如果物理内存小于2G,则需要设置,设置值为物理内存的1-2倍,如果物理内存大于2G,则无需设置。)
(6)虚拟机网络连接方式:桥接模式(B)直接连接物理网络
(7)安装完成后设置虚拟机网络(ipv4)为固定IP地址(system-config-network)
(8)进行网络测试OK,则操作系统环境准备完毕
(9)安装虚拟机时一定要选择:先创建虚拟机后安装操作系统
(10)为了安装Oracle,故选择安装类型为:桌面版本。
(11)安装SSH Secure Shell Client并连接主机
3Oracle安装前准备
『特殊说明』:
(1)以下步骤中的命令太长的可通过:SSH Secure Shell Client 直接复制进行
(2)vi基本命令:i--编辑状态  退出编辑并保存时先按ESC键,再按符合“:wq”或者":x"即可
(3)注意每个步骤时的当前用户,是root还是oracle

step-1#修改主机名
[root@oracledb ~]# sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/" /etc/sysconfig/network
[root@oracledb ~]# hostname oracledb

step-2#添加主机名与IP对应记录
[root@oracledb ~]# vi /etc/hosts 
192.168.1.8    oracledb

step-3#关闭防火墙Selinux
[root@oracledb ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config  
[root@oracledb ~]# setenforce 0

step-4#安装依赖包

1 检查依赖包

[root@oracledb ~]rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n' binutils \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel


2网络OK时通过yum安装

[root@oracledb ~]# 
yum -y install gcc gcc-c++ make binutils compat-libstdc++-33 elfutils-libelf \
elfutils-libelf-devel glibc glibc-common glibc-devel \
libaio libaio-devel libgcc libstdc++ libstdc++-devel \

unixODBC unixODBC-devel

3网络不OK时,在系统光盘中找到rpm包,通过rpm安装

[root@oracledb ~]rpm -ivh gcc.rpm

『特殊说明』:

(1)pdksh-5.2.14-37.el5.x86_64.rpm :此安装包yum源中没有,但必须,可通过其他方式下载后手工安装;

(2)虽然安装了依赖包,在安装Oracle过程时依然会校验出未安装以上某个包,则需要通过:rpm -qa gcc(校验未通过的包名) 一个个都检查核实。

(3)pdksh,已经成一个老包了,用ksh就可以,安装时会校验,但忽略就可以。

step-5#修改内核参数

[root@oracledb ~]# vi/etc/sysctl.conf  #末尾添加如下

[plain] view plain copy

  1. net.ipv4.ip_local_port_range= 9000 65500  
  2.   
  3. fs.aio-max-nr = 1048576  
  4. fs.file-max = 6815744  
  5.   
  6. kernel.shmall = 10523004  
  7. kernel.shmmax = 6465333657  
  8. kernel.shmmni = 4096  
  9. kernel.sem = 250 32000 100 128  
  10.   
  11. net.core.rmem_default=262144  
  12. net.core.wmem_default=262144  
  13. net.core.rmem_max=4194304  
  14. net.core.wmem_max=1048576  

# 参考如下注释(同上)

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

[root@oracledb ~]# sysctl -p (备注:用于输出配置后的结果,如果有错误会提示)

step-6#修改系统资源限制(打开进程数和文件数)
[root@oracledb ~]# vi/etc/security/limits.conf #末尾添加如下

[plain] view plain copy

  1. oracle soft nproc 2047  
  2. oracle hard nproc 16384  
  3. oracle soft nofile 1024  
  4. oracle hard nofile 65536  
  5.   
  6. grid soft nproc 2047  
  7. grid hard nproc 16384  
  8. grid soft nofile 1024  
  9. grid hard nofile 65536  

[root@oracledb ~]# vi /etc/pam.d/login 
session    required    pam_namespace.so  #下面添加一条pam_limits.so 
session    required    /lib64/security/pam_limits.so
session    required    /lib/security/pam_limits.so
session    required    pam_limits.so

step-7#创建用户和组
[root@oracledb ~]# groupadd oinstall 
[root@oracledb ~]# groupadd dba 
[root@oracledb ~]# groupadd oper 
[root@oracledb ~]# useradd -u600 -g oinstall oracle 
[root@oracledb ~]# usermod -G dba,oper oracle
[root@oracledb ~]# id oracle
[root@oracledb ~]# passwd oracle
# 参照如下注释

[root@localhost sonny]# groupadd oinstall  #创建用户组oinstall
[root@localhost sonny]# groupadd dba       #创建用户组dba
[root@localhost sonny]# useradd -g oinstall -g dba -m oracle  #创建oracle用户,并加入到oinstall和dba用户组
[root@localhost sonny]# passwd oracle       #设置用户oracle的登陆密码,不设置密码,在CentOS的图形登陆界面没法登陆

step-8#创建安装目录并赋权
[root@oracledb ~]# mkdir /u01 
[root@oracledb ~]# mkdir /u02 
[root@oracledb ~]# chown -R oracle:oinstall /u01
[root@oracledb ~]# chown -R oracle:oinstall /u02
[root@oracledb ~]# su oracle
[root@oracledb ~]# mkdir -p /u01/app/oracle/product/11.2.0/db_1
[root@oracledb ~]# mkdir -p /u02/oradata
[root@oracledb ~]# mkdir -p /u02/oradata/oracledb #oracledb为你数据库实例名

step-9#设置oracle环境变量(使用oracle帐号登录桌面,并开启terminal窗口文件最后最后加入如下环境变量的设置行)
[oracle@oracledb ~]# vi /home/oracle/.bash_profile

[plain] view plain copy

  1. ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE  
  2. ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME  
  3. LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH  
  4. ORACLE_SID=oracledb; export ORACLE_SID  
  5. ORA_NLS33=$ORACLE_HOME/nls/admin/data; export ORA_NLS33  
  6. NLS_LANG=american_america.zhs16gbk;export NLS_LANG  
  7. PATH=$ORACLE_HOME/bin:$PATH; export PATH  

[oracle@oracledb ~]# source /home/oracle/.bash_profile(使配置立即生效)
[oracle@oracledb ~]# env(检查环境变量设置是否OK)

对oracle用户设置限制,提高软件运行性能(红色为添加部分)

[sonny@localhost /]$ su root
Password:
[root@localhost /]# vi /etc/security/limits.conf
[root@localhost /]# cat /etc/security/limits.conf
# /etc/security/limits.conf
#
#This file sets the resource limits for the users logged in via PAM.
#It does not affect resource limits of the system services.
#
#Also note that configuration files in /etc/security/limits.d directory,
#which are read in alphabetical order, override the settings in this
#file in case the domain is the same or more specific.
#That means for example that setting a limit for wildcard domain here
#can be overriden with a wildcard setting in a config file in the
#subdirectory, but a user specific setting here can be overriden only
#with a user specific setting in the subdirectory.
#
#Each line describes a limit for a user in the form:
#
#<domain>        <type>  <item>  <value>
#
#Where:
#<domain> can be:
#        - a user name
#        - a group name, with @group syntax
#        - the wildcard *, for default entry
#        - the wildcard %, can be also used with %group syntax,
#                 for maxlogin limit
#
#<type> can have the two values:
#        - "soft" for enforcing the soft limits
#        - "hard" for enforcing hard limits
#
#<item> can be one of the following:
#        - core - limits the core file size (KB)
#        - data - max data size (KB)
#        - fsize - maximum filesize (KB)
#        - memlock - max locked-in-memory address space (KB)
#        - nofile - max number of open file descriptors
#        - rss - max resident set size (KB)
#        - stack - max stack size (KB)
#        - cpu - max CPU time (MIN)
#        - nproc - max number of processes
#        - as - address space limit (KB)
#        - maxlogins - max number of logins for this user
#        - maxsyslogins - max number of logins on the system
#        - priority - the priority to run user process with
#        - locks - max number of file locks the user can hold
#        - sigpending - max number of pending signals
#        - msgqueue - max memory used by POSIX message queues (bytes)
#        - nice - max nice priority allowed to raise to values: [-20, 19]
#        - rtprio - max realtime priority
#
#<domain>      <type>  <item>         <value>
#

#*               soft    core            0
#*               hard    rss             10000
#@student        hard    nproc           20
#@faculty        soft    nproc           20
#@faculty        hard    nproc           50
#ftp             hard    nproc           0
#@student        -       maxlogins       4
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

# End of file
[root@localhost /]#  

配置用户的环境变量(红色部分为添加代码)

[root@localhost /]# vi /home/oracle/.bash_profile
[root@localhost /]# cat /home/oracle/.bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

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,否则出现数据导入导出中文乱码问题
[root@localhost /]#  

使上述配置立即生效:

[oracle@localhost /]$ su root
Password:
[root@localhost /]# source /home/oracle/.bash_profile
[root@localhost /]# 

step-10#上传安装文件
(1)使用oracle账号登录:SSH Secure File Transfer Client
(2)上传安装包到:/home/oracle/Downloads 目录

step-11#解压oracle安装文件(进入:/home/oracle/Downloads目录)
[oracle@oracledb~]# unzip  -o -d /home/oracle/Downloadslinuxamd64_12c_database_1of2.zip 
[oracle@oracledb~]# unzip  -o -d /home/oracle/Downloadslinuxamd64_12c_database_2of2.zip 
4安装Oracle
[root@oracledb ~]# xhost +
[root@oracledb ~]# su oracle
[oracle@oracledb ~] cd /home/oracle/Downloads/database
[oracle@oracledb ~]#  ./runInstaller

说明:接下来就会弹出安装界面,然后根据网上的图文并茂文章安装。

5变更
开始下载的是:linuxamd64_12c 安装时出现莫名错误,所以变更为:linux.x64_11gR2 为了完整卸载Oracle,使用了官网提供的:Oracle De-install Utility

6问题及解答
(1)修改 linux 内核文件 sysctl  -P 报错
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
 
解决方法如下:
[root@oracledb ~]# modprobe bridge
[root@oracledb ~]# lsmod|grep bridge

(2)安装系统时swap分区创建过小,动态调整。所以在安装操作系统的时候设置好swap分区及分配好大小即可

方法:用文件作为Swap分区,操作如下
1.创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。
# dd if=/dev/zero of=/root/swapfile bs=1M count=1024

2.格式化为交换分区文件:
# mkswap /root/swapfile #建立swap的文件系统

3.启用交换分区文件:
# swapon /root/swapfile #启用swap文件

4.使系统开机时自启用,在文件/etc/fstab中添加一行:
/root/swapfile swap swap defaults 0 0

(3)yum安装源中找不到一个包,结果换了yum源也找不到,白费力气
修改yum源的方法有两种,很多朋友喜欢修改yum.repos.d这个文件进行更改,deepvps感觉这个方法不是太好,以下这个方法就方便多了。
在CentOS系统中,可以直接通过yum来安装组件,但系统默认的yum源速度往往不尽人意,都连接海外的,为了在国内达到快速安装的目的,就要需要修改yum源,可以使用
http://mirrors.163.com/   http://mirrors.sohu.com 这2个国内源。
执行以下命令就可以了
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
wget http://mirrors.163.com/.help/CentOS-Base-163.repo或wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo

运行yum makecache生成缓存

4控制台页面部分按钮上的文字是乱码解决办法(如登录界面的:登录按钮)

解决办法:

em的乱码是由Java引起的,em的按钮是由java生成的图,oracle 11g使用的是jdk1.5,jdk1.5以后有了一个简便方法来解决这个问题。

在Oracle服务器上的操作需以Oracle用户进行操作,步骤如下:
1. 从windows中获取字体文件simsun.ttc
2. 在目录$ORACLE_HOME/jdk/jre/lib/fonts中创建文件夹fallback
command: mkdir fallback
3. 将字体文件simsun.ttc拷贝到刚刚创建好的fallback目录下,并重新命名为simsun.ttf(由于windows字体具有版权,所以不能用于商用)
 
command:
mv simsun.ttc simsun.ttf
chmod 755 simsun.ttf
4. 清理一下em的缓存
command: rm $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/*.gif
5. 停止并重启dbconsole
command:
emctl stop dbconsole
emctl start dbconsole
再去浏览器中重新刷新一下em,发现按钮已经不再是乱码了

5:1521 1158两个端口未打开导致其他机器访问不到web控制端和连接不到oracle
参考:http://blog.csdn.net/jemlee2002/article/details/7042991

6: kdump启动失败
在桌面环境下,直接停用kdump

7常用操作方法及命令(给linux新手)

(1)在图形界面还可以在多个界面中进行切换:在X-window图形操作界面中按“Alt+Ctrl+功能键Fn n=1~6 ”就可以进入Console字符操作界面。
按“Alt+Ctrl+F7”即可回到刚才的X-window中
(2)
rm -f 删除文件
rm -rf 删除文件夹
(3)
cp /u01/app/oracle/product/11.2.0/db_1/jdk/jre/lib/fonts/a.txt /home/oracle/  (从什么位置复制文件到什么位置)

8Oracle操作管理

(1)启动数据库
[oracle@oracledb~]sqlplus /nolog 
SQL> connect system/system as sysdba 
SQL> startup

(2)启动监听
[oracle@oracledb~]lsnrctl start

(3)启动管理平台
[oracle@oracledb~]emctl start dbconsole

【特殊说明】
(1)关闭服务器时最好手动停止掉oracle
(2)为了使服务器资源占用小,oracle启动后服务器直接切到命令行下。如果运行稳定后,则直接修改操作系统默认启动到命令行

(1)停止数据库
[oracle@oracledb~]sqlplus /nolog 
SQL> connect system/system as sysdba 
SQL> shutdown

(2)停止监听
[oracle@oracledb~]lsnrctl stop

(3)停止管理平台
[oracle@oracledb~]emctl stop dbconsole

9 PLSQL安装配置(参考文章,我是一次搞定)

1,先到Oracle网站下载Instant Client :http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html根据你的操作系统
选择不同的Instant Client版本下载回是一个压缩文件,解压之后的文件夹叫:D:/instantclient_11_2.放在你喜欢的目录即可.例如:D:/instantclient_11_2
我的下载路径(http://download.oracle.com/otn/nt/instantclient/112030/instantclient-basic-nt-11.2.0.3.0.zip)

2.在D:/instantclient_11_2目录下新建目录network,在network目录下再新建admin目录,在admin目录下新建文件tnsnames.ora,使用文本编辑器打开写入如下内容:

MWDB=
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = MWDB)
    )
)

第一个MWDB:表示定义远程服务器的在本地主机名
第二个MWDB:远程数据库实例名

3、添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径。比如我的本机为:D:/instantclient_11_2/network/admin

4、设置ORACLE的语言,添加环境变量NLS_LANG ,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK

如果不清楚远程数据库的ORACLE 语言,可以ssh或者telnet到远程机器,在命令界面输入,用命令行连接到数据库。
select * from nls_instance_parameters;
查看NLS_LANGUAGE 的值
NLS_LANGUAGE
NLS_TERRITORY
5、下载并安装PL.SQL.Developer配置应用
配置tools->preferences->connection
Oracle Home D:/instantclient_11_2
OCI library D:/instantclient_11_2/oci.dll

6、关闭PL/SQL Developer,重起Developer.

主机名就会出现在PL/SQL Developer的列表里,输入用户名密码,就可以登录远程oracle 11g数据库

<完>

时间: 2024-10-31 12:06:58

Centos6 下Oracle 11g R2 安装的相关文章

windows下oracle 11g r2 安装过程与卸载详细图解_oracle

Oracle 11g安装 1.解压下载的包,然后进入包内,点击setup.exe开始安装 . 2.出现如下:一般把那个小对勾取消,点击下一步进行,   弹出下图这个后点'是'   3.下图后,选择创建和配置数据库,点击下一步.   4.下图,选择服务器类,因为桌面类没有高级选项的功能,下一步.   5.下图,选择单实例数据库,下一步   6.下图,选择高级安装,下一步   7,下图选择语言,如果数据库内没有用到其他的语言,就这样默认的就可以了,下一步   8.下图,选择安装版本,用企业版的,下一

Redhat 6.2 下 oracle 11g R2的安装详解第1/2页_oracle

一.配置系统参数 在安装oracle前我们需要对用到的系统参数进行配置 1.修改系统内核参数 修改sysctl.conf文件 在文件/etc/sysctl.conf中添加以下内容: kernel.sem = 250 32000 100 128 kernel.shmall = 2097152 kernel.shmmax = 2147483648     kernel.shmmni = 4096 fs.aio-max-nr = 1048576 fs.file-max = 6815744 net.co

ins-CentOS6.2下安装Oracle 11g R2 出现INS-35354,怎么解决?

问题描述 CentOS6.2下安装Oracle 11g R2 出现INS-35354,怎么解决? CentOS6.2下安装Oracle 11g R2 版本的数据库 在选择安装RAC的时候,出现INS-35354,怎么解决? 解决方案 http://www.linuxidc.com/Linux/2014-10/107840.htm

Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)

    本文主要描述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g开始,Oracle官方网站不再提供其Patch的下载链接,需要使用Meatlink账户才可以进行下载.童鞋们不要着急,没有Metalink账户的也可以自己百度一下,网上有很多下载链接,迅雷就可以搞定了.Oracle 11.2.0.3整合为7个zip压缩包,如果仅仅是安装Oracle Database,下载1至2.zip包即可.下面是其安装步骤.   一.准备安装环境1

VirtualBox+Oracle 11g R2 RAC的安装总结

昨天参照Oracle Base上的文档在VirtualBox虚拟机上完成Oracle 11G R2 RAC的安装和调试,安装文档已经很详细了,但是自己是第一次在OEL上安装RAC还是遇到不少波折,现在把一些主要的问题和解决方案记录下来以供后人参考. 第一是内存问题,最低要求是每台虚拟机1.5GB的内存,由于机器内存有限没办法,刚开始只给1GB想忽悠过去,结果安装Grid Control时等好几个小时都搞不定,只好取消重新分配1.5GB给RAC1,1.2GB给RAC2,最后勉强安装完成,但操作响应

【多图】oracle 11g R2 for windows7 64位 安装详细过程

1.下载Oracle 11g R2 for Windows的版本 下载地址: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461.html 其中包括两个压缩包:win64_11gR2_database_1of2.zip,win64_11gR2_database_2of2.zip 2.将两个压缩包解压到同一个目录下,即"database",然后单击解

Oracle 11g RAC安装时的INS-30507错误:Empty ASM disk group

最近的Oracle 11g RAC安装碰到了INS-30507错误,也就是在grid安装到创建ASM磁盘组的时候找不到任何候选磁盘,google了N多安装指导也没有找到蛛丝马迹.如果你碰到这个问题,不妨往下瞧. 1.错误信息与解释 SEVERE: [FATAL] [INS-30507] Empty ASM disk group. CAUSE: No disks were selected from a managed ASM disk group. ACTION: Select appropri

Oracle 11g R2 RAC高可用连接特性 – SCAN详解2

SCAN概念 先介绍一下什么叫SCAN,SCAN(Single Client Access Name)是Oracle从11g R2开始推出的,客户端可以通过SCAN特性负载均衡地连接到RAC数据库.SCAN提供一个域名来访问RAC,域名可以解析1个到3个(注意,最多3个)SCAN IP,我们可以通过DNS或者GNS来解析实现.其中DNS大家都很熟悉,这里不多说.GNS(Grid Naming Service)则是Oracle 11g R2的新功能,可以通过DHCP服务为节点和SCAN分配VIP和

Oracle 11g R2 RAC高可用连接特性 – SCAN详解1

昨天帮朋友解决11g RAC SCAN问题,当时为这朋友简单解答了一些SCAN特性相关的问题,但我知道这仅仅是一小部分. Oracle从11g开始推出SCAN特性可不是我解答那样简单的,SCAN特性在Oracle RAC高可用连接里占据着非常重要的地位,也是以后的重点推进方向. 昨天处理完问题比较晚自己又比较累,所以没有整理出SCAN特性相关资料,今天就抽出点时间把SCAN高可用连接特性介绍出去. 说在前头:文章中核心内容来自官方,当然我也参考了部分前辈们整理的资料,再加以自己的理解和测试整理出