Redhat6.5安装oracle11g

Posted qyan-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redhat6.5安装oracle11g相关的知识,希望对你有一定的参考价值。

Redhat6.5安装oracle11g

一、    安装环境

linux服务器:Redhat 6.5 64位

  • oracle版本:oracle11gR2

远程windows服务器:已安装Xmanager

内存:8G

存储空间:1T

二、    安装前系统设置

1、软连接lib库:ln -s /lib/libc.so.6 /lib/libc.so.5

2、修改一下lib库搜索路径vim /etc/ld.so.conf
有以下内容 include ld.so.conf.d/*.conf 改为:
include ld.so.conf.d/*.conf  /usr/X11R6/lib/

3、修改主机名

vim /etc/hosts
添加 192.200.239.40   ccod

将添加这一行放到127.0.0.1这一行之上,然后

vim /etc/sysconfig/network
HOSTNAME= ccod

这样才算是彻底的改过主机名,然后
/etc/init.d/network restart或者service network restart
最后hostname一下看看名字改过来了没有,虚拟机的话需要reboot下;

4、设置内核参数,为了保障安装检查能通过
vim /etc/sysctl.conf
添加以下信息:

kernel.shmall = 4194304

kernel.shmmax = 4147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 6815744

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 1048576

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

之后需要/ sbin/sysctl -p”让内核立刻生效;

5、调整oracle使用者的环境限制
vim /etc/security/limits.conf
在# End of file 的上面的行上添加


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

其中nofile为Oracle用户可打开的文件描述符的最大数;nproc为单个用户可用的最大进程数量。

修改登陆配置文件,编辑

vim /etc/pam.d/login
在该文件的最下面的行下添加
* session required /lib/security/pam_limits.so
* session required pam_limits.so

上面增加的内容为提升Oracle用户的权限,其中pam_limits.so 为控制为用户分配的资源,不同的模块控制不同范围的资源。

修改系统环境变量

vim /etc/profile

unset i
unset pathmunge
这两行上增加下面的内容:
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
 fi

我们编辑用户环境配置文件为Oracle用户设置相关限制(由于已经提升了Oracle的权限,所以这里为了保障系统安全,还需要做一些限制),其中 ulimit –p选项设置管道缓冲区的大小,以 Kbytes 为单位;ulimit –n选项设置可以打开最大文件描述符的数量;ulimit –u选项设置用户最大可用的进程数。

检查/tmp文件夹是否有400M的空余空间
df /tmp

6、Selinux和防护墙的设置

关闭防火墙:service iptables stop

vi /etc/selinux/config将SELINUX=enforcing改为SELINUX=disabled

重启生效;

三、    用户,用户组以及安装目录环境变量的的配置

ROOT用户,创建oracle用户:
groupadd oinstall  创建主组
groupadd dba  创建副组
useradd -g oinstall -G dba oracle  创建oracle用户并且赋予oinstall为主组dba为副组
#usermod -g oinstall -G dba oracle (已存在oracle用户,将其赋予oinstall为主组dba为副组)

passwd oracle  修改密码oracle修改权限
chown -R oracle:oinstall /home/oracle
chmod -R 755 /home/oracle

chown -R oracle:oinstall /oradata
chmod -R 755 /oradata

因为1T的空间挂载在/下,所以所有的安装目录都在/oradata下

 

创建安装文件夹:mkdir –p /oradata/app/oracle/oradata

 chown –R oracle:oinstall /oradata/app/oracle/oradata

chmod –R 755 /oradata/app/oracle/oradata

mkdir /oradata/app/oraInventory

chown –R oracle:oinstall /oradata/app/oraInventory

chmod –R /oradata/app/oraInventory

mkdir –p /oradata/app/oracle/product/11.2.0/dbhome_1

 chown –R oracle:oinstall/oradata/app/oracle/product/11.2.0/dbhome_1

设置环境变量
编辑vim .bash_profile文件,添加

umask 022

export PATH

export ORACLE_BASE=/oradata/app/oracle

export ORACLE_SID=ccod

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

export LC_CTYPE=en_US.UTF-8

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

其中ORACLE_BASE为Oracle的根目录,ORACLE_HOME为Oracle产品的目录,ORACLE_SID为Oracle实例的名称,PATH与LD_LIBRARY_PATH分别为启动路径和字典库路径。执行下面的命令使环境变量生效

$ source .bash_profile

 

 

四、执行安装

将准备好的linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.zip放在/oradata/app下面unzip解压后得到database的目录

 

之后去你的windows上启动X-manager

 

为了防止安装的时候乱码,你可以设置下本次shell的环境变量

$ export LANG=en_US

在oracle用户下输入“export DISPLAY=你windows本地的IP:0.0”

然后输入xhost,之后启动安装的脚本就会自动在windows上图形化界面安装;1、启动Xmanager – Passive

2、$ export DISPLAY=172.16.0.155:0.0

3、$ xhost

4、$./runInstaller之后是图形化界面了;

安装的大部分时候保持默认安装,点击下一步,数据库实例和全局数据库最好设置成一样的;安装完成后会有两个root用户执行的脚本,根据提示自己执行:

 

 

 

 

安装结束后自己测试下能否连上:

sqlplus sys as sysdba 输入密码后即可进入数据库:

 

 

最后要说的就是安装前数据库会有环境检查,需要很多的包,本次所有的包都已经打包好了见附件;有依赖关系的rpm –ivh XXX.rpm --nodeps

有高版本的rpm –ivh XXX.rpm –force或者rpm –ivh XXX.rpm –nodeps

--force强制安装;

 

FAQ:监听启动不了或者失败

/etc/resolve.conf 

 

注释nameserver当有网卡有DNS配置时,数据库不能连接到DNS导致监听出错,取消掉DNS,重启网卡,监听正常

配置ntp服务小节:

主要是配置主server的服务,其他的client只需要开启ntp服务然后ntpdate命令同步即可:

  1. [root@localhost ~]# cat /etc/ntp.conf |awk ‘{if($0 !~ /^$/ && $0 !~ /^#/) {print $0}}‘  
  2. restrict default ignore   //默认不允许修改或者查询ntp,并且不接收特殊封包  
  3. restrict 127.0.0.1        //给于本机所有权限  
  4. restrict 192.168.1.0 mask 255.255.255.0 notrap nomodify  //给于局域网机的机器有同步时间的权限  
  5. server time.nist.gov prefer      //设置时间服务器,加prefer表示优先  
  6. server 0.asia.pool.ntp.org  
  7. server 1.asia.pool.ntp.org  
  8. server 2.asia.pool.ntp.org  
  9. server  127.127.1.0     # local clock  

10. fudge   127.127.1.0 stratum 10  

11. driftfile /var/lib/ntp/drift  

12. keys /etc/ntp/keys  

13. [root@localhost ~]# netstat -upnl |grep ntpd   //查看时程  

  1. 14.   

15. [root@localhost ~]# ntpq -pn    //查看同步的服务器IP  

  1. 16.  remote           refid      st t when poll reach   delay   offset  jitter  

17. ==============================================================================  

  1. 18.  50.77.217.185   .INIT.          16 u    -   64    0    0.000    0.000   0.000  
  2. 19.  202.90.158.4    .INIT.          16 u    -   64    0    0.000    0.000   0.000  
  3. 20.  202.71.100.89   .INIT.          16 u    -   64    0    0.000    0.000   0.000  
  4. 21.  202.134.1.10    .INIT.          16 u    -   64    0    0.000    0.000   0.000  

22. *127.127.1.0     .LOCL.          10 l   18   64  377    0.000    0.000   0.001  

  1. 23.   

24. [root@localhost ~]# ntpstat   //同步的结果  

25. synchronised to local net at stratum 11  

  1. 26.  time correct to within 12 ms  
  2. 27.  polling server every 512 s  

1、server中的配置需要三点:server ip prefer

server time.nist.gov prefer      //设置时间服务器,加prefer表示优先  

server 0.asia.pool.ntp.org  

server 1.asia.pool.ntp.org  

server 2.asia.pool.ntp.org  

2、网关和路由内的ip设置一般配置的格式;

restrict 192.168.1.0 mask 255.255.255.0 notrap nomodify  //给于局域网机的机器有同步时间的权限  

3、本地没有联网的话只能配置本地同步server的地址127.127.1.0设置;

server  127.127.1.0     # local clock  

fudge   127.127.1.0 stratum 10

4、关闭或者解除123端口限制

service iptables stop;或者配置防火墙策略

查看状态:
iptables -L -n
下面添加对特定端口开放的方法:
使用iptables开放如下端口
/sbin/iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
保存
/etc/rc.d/init.d/iptables save
重启服务
service iptables restart
查看需要打开的端口是否生效?
/etc/init.d/iptables status

法2:
或直接编辑/etc/sysconfig/iptables
-A INPUT -p tcp -m tcp --dport 4000 -j ACCEPT
保存在前面部分
再重启:
service iptables restart

 

开放某端口给特定的ip方法:https://www.cnblogs.com/fengyefeiluo/p/5057617.html

 

 

编辑/etc/sysconfig/iptables,添加

-A INPUT -m state --state NEW -m tcp -p tcp -s 127.0.0.1 --dport 6379 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp -s 126.212.173.185 --dport 6379 -j ACCEPT

 

以上加红地方就是只对本机和126.212.173.185开放6379端口,其他ip用telnet是无法连接的,

如果访问ip没有限制,就不需要添加-s ip地址了,例如

-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

 

对了,一定要在最后添加

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

 

COMMIT

 

5、编辑/etc/sysconfig/ntpd添加SYNC_HWCLOCK=yes

6、C-S的ntp服务启动;

7、同步:/usr/sbin/ntpdate -u 192.168.13.17 && /sbin/hwclock –w

 

FAQ:

1、同步的时候提示:no server suitable for synchronization,如果上述配置都没有问题,则可能需要几分钟等待;

以上是关于Redhat6.5安装oracle11g的主要内容,如果未能解决你的问题,请参考以下文章

redhat6.5部署oracle 11G R2 (参考配置)

如何在redhat6.5下安装oracle11gr2

RHEL 6.5 + Oracle 11g安装

Oracle数据库11g基于rehl6.5的配置与安装

oracle 11g grid软件安装[20180121]

windows10安装oracle11g报错ORA-01034ORA-01078