iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Centos7.0无桌面环境上静默安装oracle 11g
  • 268
分享到

Centos7.0无桌面环境上静默安装oracle 11g

2024-04-02 19:04:59 268人浏览 安东尼
摘要

 Centos7.0无桌面环境上静默安装oracle 11g   1    配置基础环境1.1  &nbs

 

Centos7.0无桌面环境上静默安装oracle 11g

 

 

 

1    配置基础环境

1.1   创建用户及组

 

groupadd oinstall #创建oinstall

groupadd dba # 创建dba组

useradd -g oinstall -G dba oracle #创建oracle用户

passwd oracle # 修改oracle用户的登录密码

[root@test-1 oracle]# id oracle #查看oracle用户信息

uid=1000(oracle) gid=1000(oinstall)groups=1000(oinstall),1001(dba)

1.2   创建目录

 

mkdir -p /mnt/app/oracle

chown -R oracle:oinstall /mnt/app/oracle

chmod -R 775 /mnt/app/oracle

1.3   安装依赖包

 

依赖包是安装oracle的必须,如果某些需要的依赖包没有安装上,安装过程中会出现各种各样的错误。所以,依赖包安装完整,安装过程一般会比较顺利。

直接执行如下命令,安装依赖包。

yum -y install binutils compat-libcap1compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.develcompat-libstdc++-33 compat-libstdc++-33*.devel GCc gcc-c++ glibc glibc*.i686glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devellibaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686

 

参考官方:Http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#BHCCADGD

The following or later version of packagesfor Oracle linux 7, and Red Hat Enterprise Linux 7 must be installed:

binutils-2.23.52.0.1-12.el7.x86_64

compat-libcap1-1.10-3.el7.x86_64

compat-libstdc++-33-3.2.3-71.el7.i686

compat-libstdc++-33-3.2.3-71.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

unixODBC-2.3.1-6.el7.x86_64 or later

unixODBC-2.3.1-6.el7.i686 or later

unixODBC-devel-2.3.1-6.el7.x86_64 or later

unixODBC-devel-2.3.1-6.el7.i686 or later

1.4   更改hosts文件

 

hosts文件中,要讲主机名添加到配置文件中,及添加到127.0.0.1后面,如果没有加,安装过程中会出错。

 

首先查看主机名:使用hostname命令

[root@test-1 oracle]# hostname

test-1

主机名为test-1,则把test-1添加到/etc/hosts文件中:

[root@test-1 oracle]# vi /etc/hosts

127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4test-1

::1        localhost localhost.localdomain localhost6 localhost6.localdomain6

将自己的主机名添加到文件中,保存退出。

1.5   配置内核参数/etc/sysctl.conf

 

编辑sysctl.conf文件

`[root@test-1 oracle]# vi /etc/sysctl.conf

 

加入如下配置

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

vm.hugetlb_shm_group = 1001 #此处与id oracle中的dba中一致

让内核参数生效,执行:/sbin/sysctl -p

1.6   修改用户限制

 

vi /etc/security/limits.conf

#在末尾添加

 

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

 

保存退出。

1.7   修改/etc/pam.d/login

 

vi /etc/pam.d/login

打开编辑此文件,在末尾加入如下配置:

session required /lib64/security/pam_limits.so

session required pam_limits.so

说明:此处,要使用lib64,如果使用lib,则可能会出现无法登陆系统的情况,使用lib是在32位的情况下,如果是64位系统,则应该使用lib64

 

保存退出。

1.8   修改系统配置文件/etc/profile

 

vi /etc/profile

加入如下配置:

if [[ $USER = "oracle" ]]; then

       if [[ $shell = "/bin/ksh" ]]; then

                ulimit -p16384

                ulimit -n65536

       else

                ulimit -u16384 -n 65536

       fi

fi         

注意空格

保存退出

使其生效 source /etc/profile

1.9   修改oracle用户环境变量

 

vi /home/oracle/.bash_profile

加入如下配置文件:

#oracle

export TMP=/tmp;

export TMPDIR=$TMP;

export ORACLE_BASE=/mnt/app/oracle;

exportORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1;

export ORACLE_SID=orcl;

export ORACLE_TERM=xterm;

export PATH=/usr/sbin:$PATH;

export PATH=$ORACLE_HOME/bin:$PATH;

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

exportCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

保存退出。

使其生效:source /home/oracle/.bash_profile

2    开始安装oracle

2.1   上传、解压oracle安装文件

 

使用sftp将安装文件上传至服务器

 

解压文件夹

[root@test-1 oracle]# unziplinuxamd64_12102_database_1of2.zip

[root@test-1 oracle]# unziplinuxamd64_12102_database_2of2.zip

加压之后,得到一个database的文件夹,将其移动到/mnt/app/oracle目录下

mv database /mnt/app/oracle

对文件授权

chown -R oracle:oinstall/mnt/app/oracle/database

2.2   编辑、安装数据库响应文件db_install.rsp

 

最终的安装主要在与三个响应文件的配置:dbca.rsp,netca.rsp,db_install.rsp,分别对应于创建数据库,创建监听,安装数据库。三个文件的路径在database/response 文件夹下。

为了防止出错,我们把三个响应文件复制到oracle用户路径下,出错之后可以删除再复制更改即可。

 

在oracle用户目录下,创建一个etc文件夹

[oracle@test-1 /]$ mkdir /home/oracle/etc

复制响应文件

[oracle@test-1 /]$ cp /mnt/app/oracle/database/response/*/home/oracle/etc

[oracle@test-1 /]$ ls /home/oracle/etc/

dbca.rsp db_install.rsp  netca.rsp

授权

[oracle@test-1 /]$ su - root

[root@test-1 ~]# chmod 777 /home/oracle/etc/*.rsp

编辑安装响应文件

[root@test-1 ~]# vi /home/oracle/etc/db_install.rsp

找到如下的配置,将配置更改如下:

`oracle.install.option=INSTALL_DB_SWONLY //安装类型

ORACLE_HOSTNAME=test-1 // 主机名称(hostname查询)

UNIX_GROUP_NAME=oinstall // 安装组

INVENTORY_LOCATION=/mnt/app/oracle/oraInventory//INVENTORY目录(不填就是默认值)

SELECTED_LANGUAGES=en // 选择语言

ORACLE_HOME=/mnt/app/oracle/product/12.1.0/db_1//oracle_home

ORACLE_BASE=/mnt/app/oracle //oracle_base

oracle.install.db.InstallEdition=EE // oracle版本

oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件

oracle.install.db.DBA_GROUP=dba // dba用户组

oracle.install.db.OPER_GROUP=dba // oper用户组

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE//数据库类型

oracle.install.db.config.starterdb.globalDBName=orcl//globalDBName

oracle.install.db.config.starterdb.SID=orcl//SID

oracle.install.db.config.starterdb.passWord.ALL=Admin@123#@!//设定所有数据库用户使用同一个密码

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false//(手动写了false)

DECLINE_SECURITY_UPDATES=true //设置安全更新(貌似是有bug,这个一定要选true,否则会无限提醒邮件地址有问题,终止安装。PS:不管地址对不对)`

 

配置好后。保存退出。

 

2.3   开始安装数据库。切换到oracle用户下

[root@test-1 ~]# su - oracle

[oracle@test-1 database]$/mnt/app/oracle/database/runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp

安装过程如下,出现如下结果,说明安装成功

Starting Oracle Universal Installer...

Checking Temp space: must be greater than500 MB. Actual 17997 MB Passed

Checking swap space: must be greater than150 MB. Actual 2999 MB Passed

Preparing to launch Oracle UniversalInstaller from /tmp/OraInstall2017-06-04_07-51-31PM. Please wait...[oracle@test-1 database]$ [WARNING] [INS-32055] The Central Inventory is locatedin the Oracle base.

ACTION: Oracle recommends placing thisCentral Inventory in a location outside the Oracle base directory.

[WARNING] [INS-13014] Target environmentdoes not meet some optional requirements.

CAUSE: Some of the optional prerequisitesare not met. See logs for details./tmp/OraInstall2017-06-04_07-51-31PM/installActions2017-06-04_07-51-31PM.log

ACTION: Identify the list of failedprerequisite checks from the log:/tmp/OraInstall2017-06-04_07-51-31PM/installActions2017-06-04_07-51-31PM.log.Then either from the log file or from installation manual find the appropriateconfiguration to meet the prerequisites and fix it manually.

You can find the log of this installsession at:

/mnt/app/oracle/oraInventory/logs/installActions2017-06-04_07-51-31PM.log

The installation of Oracle Database 12c wassuccessful.

Please check'/mnt/app/oracle/oraInventory/logs/silentInstall2017-06-04_07-51-31PM.log' fORMore details.

 

As a root user, execute the followingscript(s):

 

1. /mnt/app/oracle/oraInventory/orainstRoot.sh

2. /mnt/app/oracle/product/12.1.0/db_1/root.sh

Successfully Setup Software

 

2.4   使用root用户登录 ,分别执行

/mnt/app/oracle/oraInventory/orainstRoot.sh

/mnt/app/oracle/product/12.1.0/db_1/root.sh

到此,数据库已成功安装上。

2.5   配置、启动监听

 

监听器配置响应文件为:/home/oracle/etc/netca.rsp,此文件使用默认即可。

 

执行配置监听

[oracle@test-1 database]$ netca /silent/responsefile /home/oracle/etc/netca.rsp

出现如下信息,说明监听配置成功。

[oracle@test-1 oracle]$ netca /silent/responsefile /home/oracle/etc/netca.rsp

 

正在对命令行参数进行语法分析:

参数"silent" = true

参数"responsefile" =/home/oracle/etc/netca.rsp

完成对命令行参数进行语法分析。

Oracle Net Services 配置:

完成概要文件配置。

Oracle Net 监听程序启动:

    正在运行监听程序控制:

     /mnt/app/oracle/product/12.1.0/db_1/bin/lsnrctl start LISTENER

    监听程序控制完成。

    监听程序已成功启动。

监听程序配置完成。

成功完成 Oracle Net Services 配置。退出代码是0

Centos7.0无桌面环境上静默安装oracle 11g

成功运行后,在/mnt/app/oracle/product/12.1.0/db_1/network/admin/中生成listener.ora和sqlnet.ora

通过netstat命令可以查看1521端口正在监听。

Yum安装netstat软件,软件包是在net-tools中

[root@test-1 ~]# yum install net-tools

[root@test-1 ~]# netstat -lntup|grep 1521

tcp6      0      0 :::1521                 :::*                    LISTEN      14496/tnslsnr      

2.5.1启动监听

[oracle@test-1 database]$ lsnrctl start

查看监听状态

 

[oracle@test-1 database]$ lsnrctl status

LSNRCTL for Linux: Version 12.1.0.2.0 -Production on 04-JUN-2017 20:15:07

Copyright (c) 1991, 2014, Oracle. Allrights reserved.

Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))

STATUS of the LISTENER

Alias LISTENER

Version TNSLSNR for Linux: Version12.1.0.2.0 - Production

Start Date 04-JUN-2017 20:08:08

Uptime 0 days 0 hr. 7 min. 0 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File/mnt/app/oracle/product/12.1.0/db_1/network/admin/listener.ora

Listener Log File/mnt/app/oracle/diag/tnslsnr/test-1/listener/alert/log.xml

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

The listener supports no services

The command completed successfully

2.5.2重启监听

 

[oracle@test-1 database]$ lsnrctl reload

2.6   静默创建数据库实例

 

2.6.1编辑应答文件

[oracle@test-1 /]$ su - root

[root@test-1 ~]# vim/home/oracle/etc/dbca.rsp

 

设置以下参数:

GDBNAME = "orcl"

SID = "orcl"

SYSPASSWORD = "oracle"

SYSTEMPASSWORD = "oracle"

SYSMANPASSWORD = "oracle"

DBSNMPPASSWORD = "oracle"

DATAFILEDESTINATION=/mnt/app/oracle/oradata

RECOVERYAREADESTINATION=/mnt/app/oracle/fast_recovery_area

CHARACTERSET = "ZHS16GBK"

TOTALMEMORY = "1638"

 

其中TOTALMEMORY = "1638" 为1638MB,物理内存2G*80%。执行安装数据库实例

切换到oracle用户

[root@test-1 ~]# su - oracle

[oracle@test-1 ~]$ dbca -silent-responseFile /home/oracle/etc/dbca.rsp

Centos7.0无桌面环境上静默安装oracle 11g

日志显示,数据库实例已经成功创建。

2.6.2建库后进行实例进程检查:

[oracle@test-1 ~]$ ps -ef | grep ora_ |grep -v grep

Centos7.0无桌面环境上静默安装oracle 11g

2.6.3查看监听状态:

[oracle@test-1~]$  lsnrctl status

Centos7.0无桌面环境上静默安装oracle 11g

2.6.4登录查看实例状态:

[oracle@test-1 ~]$ sqlplus / as sysdba

SQL> select status from v$instance;

Centos7.0无桌面环境上静默安装oracle 11g

2.7   数据库的启动与停止

 

进入到oracle安装目录的bin目录下,执行 dbstop即可停止数据库。

2.8   开放端口(使用root用户)

 

由于数据库安装了一般需要外网访问,所以需要开放数据库连接端口。

[root@test-1 /]# firewall-cmd --zone=public--add-port=1521/tcp --permanent

success

[root@test-1 /]# firewall-cmd --zone=public--add-port=5500/tcp --permanent

success

[root@test-1 /]# firewall-cmd --reload

success

 

命令含义:

--zone #作用域

--add-port=80/tcp #添加端口,格式为:端口/通讯协议

--permanent #永久生效,没有此参数重启后失效

重启防火墙

firewall-cmd --reload

2.9   设置oracle数据库随系统开机自启动。

 

1、修改/mnt/app/oracle/product/12.1.0/db_1/bin/dbstart

[oracle@test-1 ~]$ vim/mnt/app/oracle/product/12.1.0/db_1/bin/dbstart

将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

2、修改/mnt/app/oracle/product/12.1.0/db_1/bin/dbshut

[oracle@test-1 ~]$ vim /mnt/app/oracle/product/12.1.0/db_1/bin/dbshut

将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

3、修改/etc/oratab文件

[oracle@test-1~]$ vim /etc/oratab

将orcl:/mnt/app/oracle/product/11.2.0:N中最后的N改为Y,成为orcl:/mnt/app/oracle/product/11.2.0:Y

2.9.1输入命令dbshut和dbstart测试

[oracle@test-1~]$ dbshut

Centos7.0无桌面环境上静默安装oracle 11g

Oracle监听停止,进程消失。

Centos7.0无桌面环境上静默安装oracle 11g

Oracle监听启动,进程启动。

2.9.2、编辑/etc/rc.d/rc.local

2.9.2.1      方案一:自启动

vi /etc/rc.d/rc.local

加入如下配置:

su oracle -lc "/mnt/app/oracle/product/12.1.0/db_1/bin/lsnrctlstart"

su oracle -lc /mnt/app/oracle/product/12.1.0/db_1/bin/dbstart

保存退出

重启系统,再次连接数据库,将正常连接上。      

2.9.2.2      方案二:切换到root账户建立自启动脚本

[oracle@test-1~]$ su -

[root@test-1~]# vim /etc/rc.d/init.d/oracle

添加以下内容(有些值如ORACLE_HOME和ORACLE_USER等根据实际情况可以修改):

[root@test-1 ~]# cat/etc/rc.d/init.d/oracle

#!/bin/bash

 

# oracle: Start/Stop Oracle Database 11g R2

# chkconfig: 345 90 10

# description: The Oracle Database is anObject-Relational Database Management System.

#

. /etc/rc.d/init.d/functions

LOCKFILE=/mnt/app/oracle/var/lock/subsys/oracle

ORACLE_HOME=/mnt/app/oracle/product/12.1.0/db_1/

ORACLE_USER=oracle

case "$1" in

'start')

   if[ ! -f $LOCKFILE ];

    then

         touch "$LOCKFILE"

    else

       exit 1

   fi

   su- $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"

   su- $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart"

   su- $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"

  echo -n $"Starting Oracle Database:"

   ;;

'stop')

   if[ ! -f $LOCKFILE ]; then

     echo $0 already stopping.

     exit 1

   fi

   echo-n $"Stopping Oracle Database:"

   su- $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop"

   su- $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"

   su- $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"

   rm-f "$LOCKFILE"

   ;;

'restart')

   $0stop

   $0start

   ;;

'status')

   if[ -e $LOCKFILE ];

       then

                echo $0 started.

     else

                echo $0 stopped.

   fi

   ;;

*)

  echo "Usage: $0 [start|stop|status]"

  exit 1

esac

exit 0

2.9.2.3      修改/etc/init.d/oracle服务文件权限

[root@test-1 ~]# chmod 755  /etc/init.d/oracle

[root@test-1 ~]# ll /etc/init.d/oracle

-rwxr-xr-x 1 root root 1203 6月  29 10:59 /etc/init.d/oracle

2.9.2.4      设置开机启动

[root@test-1 ~]# chkconfig oracle on

Centos7.0无桌面环境上静默安装oracle 11g

 

2.9.2.5      进行serviceoracle start/stop/restart测试

Centos7.0无桌面环境上静默安装oracle 11g


您可能感兴趣的文档:

--结束END--

本文标题: Centos7.0无桌面环境上静默安装oracle 11g

本文链接: https://www.lsjlt.com/news/51951.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Centos7.0无桌面环境上静默安装oracle 11g
     Centos7.0无桌面环境上静默安装oracle 11g   1    配置基础环境1.1  &nbs...
    99+
    2022-10-18
  • Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装)
    一、安装前环境准备1、  VMware Workstation 10 搭建 CentOS 7 x64位虚拟机,CentOS7操作系统最小化安装,2G内存,20G磁盘空间,1核CPU,已配置好网络I...
    99+
    2022-10-18
  • Ubuntu上怎么安装桌面环境
    这篇文章主要讲解了“Ubuntu上怎么安装桌面环境”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Ubuntu上怎么安装桌面环境”吧!你需要做以下准备:已经配置好 Ubuntu 服务器,且 R...
    99+
    2023-07-04
  • 怎么在Ubuntu 20.04 LTS上安装Deepin桌面环境
    小编给大家分享一下怎么在Ubuntu 20.04 LTS上安装Deepin桌面环境,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在 Ubuntu 20.04 上安...
    99+
    2023-06-15
  • 如何在阿里云ecs上安装桌面环境?
    在当今数字化的时代,云计算已成为企业和个人的重要工具。阿里云作为国内领先的云计算服务提供商,其丰富的资源和服务功能受到了广泛的关注和应用。在阿里云ecs上安装桌面环境,可以让我们在任何地方都能够便捷地使用个人电脑,实现办公、学习、娱乐等多种...
    99+
    2023-11-11
    阿里 桌面 环境
  • 如何在Arch Linux上安装和设置KDE桌面环境
    如何在Arch Linux上安装和设置KDE桌面环境,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。我相信你是按照这份很棒的指南安装来 Arch Linux&nbs...
    99+
    2023-06-05
  • ArchLinux上安装和设置KDE桌面环境具体方法是什么
    今天就跟大家聊聊有关ArchLinux上安装和设置KDE桌面环境具体方法是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。KDE Plasma 桌面 无疑是定制化的巅峰,因为你几乎...
    99+
    2023-06-28
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作