码迷,mamicode.com
首页 > 数据库 > 详细

Centos6.5下Oracle 11g R2安装过程

时间:2016-09-17 21:51:20      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:

来自: http://blog.csdn.net/cafardhaibin/article/details/25071249

 

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  

 

[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

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)

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数据库了

<完>

Centos6.5下Oracle 11g R2安装过程

标签:

原文地址:http://www.cnblogs.com/liyingxiang/p/5879741.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!