[oracle]centos 7 安装oracle

换了好几个系统终于还是利用centos安装oralce成功了,这里我也参考了网上的好多资料以及oracle的官方文档

1、下载oracle,我这里选择的是11gr2版本,下载下来后有两个文件,利用unzip命令解压到相同目录

2、在磁盘中建立oracle的安装目录

mkdir -p /oracle/oraclebase #这是oracle的安装基目录
mkdir -p /oracle/oraInventory #这是一些文件日志的目录

3、创建oracle用户和组

这里说以下为什么要建立用户和组,因为数据库存放一些重要的数据,并不是谁想访问就可以访问的,必须对用户的权限进行管理,只有用户加入了当前组,并赋予其权限才能够对数据库进行操作。

groupadd oinstall #创建用户组oinstall

groupadd dba #创建用户组dba

useradd -g oinstall -g dba -m oracle #创建用户oracle,并加入oinstall和dba用户组

passwd oracle #设置用户oracle的登录密码,根据提示输入两次密码

chown -R oracle:oinstall /oracle/oraclebase #设置目录所有者为oinstall用户组的oracle用户

chown -R oracle:oinstall /oracle/oraInventory

4、修改操作系统名称

vi /etc/redhat-release #编辑

修改为:redhat-7

这里我也不大清楚,因为oracle官方认证的系统是redhat、oracle linux、suse等等,最后选择centos来安装oracle,也是因为centos是redhat的一个发行版,我想兼容还是可以的。

5、修改内核参数

这一步修改主要是因为,在oracle的官方文档中有对oracle数据库安装配置的最低要求,因此需要修改一下

vi /etc/sysctl.conf #编辑,

#在最后添加以下代码

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

保存退出后要进行如下操作以使配置生效

sysctl -p #使配置立即生效

6、对oracle用户设置限制

vi /etc/security/limits.conf #在末尾添加以下代码

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

注:突然想起来,加入要是vi编辑文件内容较多的话,可以进入命令模式输入“$”来跳到文尾。

7、配置用户的环境变量

vi /home/oracle/.bash_profile 

#在最后添加以下代码

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 #防止安装过程出现乱码

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题

保存退出以后,输入如下命令使配置生效

source .bash_profile #使设置立刻生效

8、关闭SELINUX

vi /etc/selinux/config 
#编辑配置文件

#注释掉SELINUX=enforcing 

# 注释掉SELINUXTYPE=targeted

SELINUX=disabled #增加

9、配置防火墙

由于我安装的系统是centos 7 的Live版本,所以有好多东西没有,我再添加完如下代码之后,没有找到iptables restart命令,然后重启了下系统,反正最后也没什么影响,我猜我的这个版本中没有防火墙。网上代码如下:

vi /etc/sysconfig/iptables #编辑防火墙配置文件,添加以下内容

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 1521 -j ACCEPT

/etc/init.d/iptables restart #重启防火墙使配置生效

10、检查依赖关系

这里我检查了两步,首先是按照官方文档检查了一遍,在官方文档中我参考的是redhat-7所有需要的东西,如下:

binutils-2.23.52.0.1-12.el7.x86_64 
compat-libcap1-1.10-3.el7.x86_64 
gcc-4.8.2-3.el7.x86_64 
gcc-c++-4.8.2-3.el7.x86_64 
glibc-2.17-36.el7.i686 
glibc-2.17-36.el7.x86_64 
glibc-devel-2.17-36.el7.i686 
glibc-devel-2.17-36.el7.x86_64 
ksh
libaio-0.3.109-9.el7.i686 
libaio-0.3.109-9.el7.x86_64 
libaio-devel-0.3.109-9.el7.i686 
libaio-devel-0.3.109-9.el7.x86_64 
libgcc-4.8.2-3.el7.i686 
libgcc-4.8.2-3.el7.x86_64 
libstdc++-4.8.2-3.el7.i686 
libstdc++-4.8.2-3.el7.x86_64 
libstdc++-devel-4.8.2-3.el7.i686 
libstdc++-devel-4.8.2-3.el7.x86_64 
libXi-1.7.2-1.el7.i686 
libXi-1.7.2-1.el7.x86_64 
libXtst-1.2.2-1.el7.i686 
libXtst-1.2.2-1.el7.x86_64 
make-3.82-19.el7.x86_64 
sysstat-10.1.5-1.el7.x86_64

检查的时候就利用如下命令即可,直接在线安装,假如安装了的肯定会提示,否则就安装了

yum install binutils #以第一个包为例子

接下来顺便将我参考的一篇文章检测以来关系的方法也用了下,这条命令有通配符,安装的package比以上更多,辐射范围更广,保证万无一失么。

yum install gcc* gcc-* gcc-c++-* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-*

这个有一个pdksh可能提示没有此包之类的,不过没关系,在第一步的时候已经检测安装了ksh

11、接下来进行图形界面的安装,首先要切换到上边创建的用户oracle下,最好logout后在登陆。

12、cd进入上边解压的oracle安装文件目录database中

注意:由于上边的那个database的owner是root,oracle没有权限访问,可以利用如下命令,将此文件夹的所有者该为oracle.

su - root #切换到root用户
chown -R oracle /.../database

13、运行如下命令启动安装界面

export LANG=en_US #设置编码,防止图形界面乱码
./runInstaller

注意:此处可能会提醒DISPLAY未通过是怎么的,我忽略的,貌似没影响

接下来就进入一步一步的安装步骤中,很简单的,按部就班来就可以了,选择部分按默认的就可以

在接下来的安装当中可能会提示有错误之类的email的忽略继续,

然后可能还会有主机名与Ip没映射的利用如下命令修改hosts文件就可以

vi /etc/hosts

#进入之后将你的主机名加入到127.0.0.1的对应中,注意是主机名,不是你的用户名

14、我在安装过程中还遇到了两个其他的错误是关于makefile,和一个警告,但是我忽略后,安装完毕以后,也没发现有问题,将错误代码贴到这里,留待以后解决

install makfile error

INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target install of makefile /oracle/oraclebase/product/11.2.0/db_1/ctx/lib/ins_ctx.mk. See /oracle/oraInventory/logs/installActions2014-12-22_05-24-27PM.log for details.
Exception Severity: 1
INFO: Calling Action unixActions10.2.0.3.0  make
    registerOnly = false
    installMakePath = /usr/bin/make
    installMakeFileName = /oracle/oraclebase/product/11.2.0/db_1/racg/lib/ins_has.mk
    installTarget = racg_install
    undoMakeFileName = 
    installArguments = ORACLE_HOME=/oracle/oraclebase/product/11.2.0/db_1
    logFile = /oracle/oraclebase/product/11.2.0/db_1/install/make.log
    undoTarget = 
    progMsg = Linking RACG Executables

INFO: Linking RACG Executables
INFO: Linking RACG Executables
INFO: The output of this make operation is also available at: /oracle/oraclebase/product/11.2.0/db_1/install/make.log
INFO: 

agent nmhs makefile error

INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target agent nmhs of makefile /oracle/oraclebase/product/11.2.0/db_1/sysman/lib/ins_emagent.mk. See /oracle/oraInventory/logs/installActions2014-12-22_05-24-27PM.log for details.
Exception Severity: 1
INFO: Calling Action unixActions10.2.0.3.0  make
    registerOnly = false
    installMakePath = /usr/bin/make
    installMakeFileName = /oracle/oraclebase/product/11.2.0/db_1/rdbms/lib/ins_rdbms.mk
    installTarget = all_no_orcl
    undoMakeFileName = 
    installArguments = ORACLE_HOME=/oracle/oraclebase/product/11.2.0/db_1
    logFile = /oracle/oraclebase/product/11.2.0/db_1/install/make.log
    undoTarget = 
    progMsg = Linking RDBMS Executables

INFO: Linking RDBMS Executables
INFO: Linking RDBMS Executables
INFO: The output of this make operation is also available at: /oracle/oraclebase/product/11.2.0/db_1/install/make.log
INFO: 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。