千家信息网

怎么在Redhat6.5中安装oracle11g

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,怎么在Redhat6.5中安装oracle11g?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、 安装环境linux服务器:Redha
千家信息网最后更新 2024年11月23日怎么在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/networkHOSTNAME= 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/profileunset iunset 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/oradatachmod -R 755 /oradata/app/oracle/oradatamkdir /oradata/app/oraInventorychown -R oracle:oinstall /oradata/app/oraInventorychmod -R /oradata/app/oraInventorymkdir -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 022export PATHexport ORACLE_BASE=/oradata/app/oracleexport ORACLE_SID=ccodexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/libexport LC_CTYPE=en_US.UTF-8export 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命令同步即可:

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

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

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

18. 50.77.217.185 .INIT. 16 u - 64 0 0.000 0.000 0.000
19. 202.90.158.4 .INIT. 16 u - 64 0 0.000 0.000 0.000
20. 202.71.100.89 .INIT. 16 u - 64 0 0.000 0.000 0.000
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

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

25. synchronised to local net at stratum 11

26. time correct to within 12 ms

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的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

0