centos7最小化安装Oracle11gR2

1、准备CentOS 7 系统环境

我以 CentOS-7-x86_64-DVD-1511.iso 为例,简述Oracle 11g的安装过程。 
由于是使用静默模式(silent)安装的,无需使用图形化界面,我选择了最小安装的服务器版的CentOS 7。

安装过程可参考 https://jingyan.baidu.com/article/fd8044fade8ac35031137a82.html

 安装完成后,只有命令行界面。

2、下载 Oracle 11g

Oracle官方网站

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/ 

  

根据操作系统的版本进行下载Oracle安装包,11.2.0.2.0 zlinux64版本的Oracle是安装在IBM服务器的,CentOS 7是无法安装的。

下载完成后,有两个压缩文件

3、安装依赖包

安装依赖包之前,个人建议将yum源修改为aliyun源,下载速度快些,执行如下命令即可:

cd /etc
mv yum.repos.d yum.repos.d.bak
mkdir yum.repos.d
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache

修改成功后,安装如下依赖包:

yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel

  

使用如下命令检查依赖是否安装完整

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed"

发现 pdksh 没有安装

执行yum -y install pdksh,发现CentOS 7 没有相关安装包可用

通过wget命令直接下载pdksh的rpm包,我下载到了/tmp/

wget -O /tmp/pdksh-5.2.14-37.el5_8.1.x86_64.rpm http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

下载完成后,进入 /tmp/

rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

再次检查依赖包是否安装完整

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed"

到此依赖包安装完整

4、添加oracle用户组和用户

groupadd oinstall

groupadd dba

groupadd asmadmin

groupadd asmdba

useradd -g oinstall -G dba,asmdba oracle -d /home/oracle

添加完成后,查看oracle用户

id oracle

初始化oracle用户的密码

passwd oracle

5、配置hostname(本机IP映射)

vim /etc/hosts

192.168.154.154 centos-oracle

测试hostname

ping -c 3 centos-oracle

6、优化OS内核参数

kernel.shmmax 参数设置为物理内存的一半

vim /etc/sysctl.conf

fs.aio-max-nr=1048576

fs.file-max=6815744

kernel.shmall=2097152

kernel.shmmni=4096

kernel.shmmax = 1073741824

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=1048586

使参数生效

sysctl -p

7、限制oracle用户的shell权限

vim /etc/security/limits.conf

oracle              soft    nproc   2047

oracle              hard    nproc   16384

oracle              soft    nofile  1024

oracle              hard    nofile  65536

vim /etc/pam.d/login

session  required   /lib64/security/pam_limits.so

session  required   pam_limits.so

vim /etc/profile

if [ $USER = "oracle" ]; then

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

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

8、创建oracle安装目录

mkdir -p /db/app/oracle/product/11.2.0 mkdir /db/app/oracle/oradata mkdir /db/app/oracle/inventory mkdir /db/app/oracle/fast_recovery_area chown -R oracle:oinstall /db/app/oracle chmod -R 775 /db/app/oracle

9、配置oracle用户环境变量

su - oracle

vim .bash_profile

umask 022

export ORACLE_HOSTNAME=centos-oracle

export ORACLE_BASE=/db/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/

export ORACLE_SID=ORCL

export PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH

export LC_ALL="en_US"

export LANG="en_US"

export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"

export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

以上配置完成后,个人建议重启下系统

reboot

10、解压oracle压缩文件到 /db

cd /tmp

unzip linux.x64_11gR2_database_1of2.zip -d /db

unzip linux.x64_11gR2_database_2of2.zip -d /db

解压完成后

mkdir /db/etc/

cp /db/database/response/* /db/etc/

vim /db/etc/db_install.rsp

oracle.install.option=INSTALL_DB_SWONLY

DECLINE_SECURITY_UPDATES=true

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/db/app/oracle/inventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOSTNAME=centos-oracle

ORACLE_HOME=/db/app/oracle/product/11.2.0

ORACLE_BASE=/db/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=true

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

开始安装

su - oracle./runInstaller -silent -responseFile /db/etc/db_install.rsp -ignorePrereq

安装期间可以使用tail命令监看oracle的安装日志

tail -f /db/app/oracle/inventory/logs/installActions2017-07-12_03-48-29PM.log

安装完成,提示Successfully Setup Software. 
根据提示完成配置

su root

sh /db/app/oracle/inventory/orainstRoot.sh

sh /db/app/oracle/product/11.2.0/root.sh

11、配置静默监听

su - oracle

netca /silent /responsefile /db/etc/netca.rsp

查看监听端口

netstat -tnulp | grep 1521

12、静默创建数据库

TOTALMEMORY 设置为总内存的80%

vi /db/etc/dbca.rsp

GDBNAME = "orcl"

SID = "orcl"

SYSPASSWORD = "oracle"

SYSTEMPASSWORD = "oracle"

SYSMANPASSWORD = "oracle"

DBSNMPPASSWORD = "oracle"

DATAFILEDESTINATION =/db/app/oracle/oradata

RECOVERYAREADESTINATION=/db/app/oracle/fast_recovery_area

CHARACTERSET = "AL32UTF8"

TOTALMEMORY = "1638"

执行静默建库

dbca -silent -responseFile /db/etc/dbca.rsp

查看oracle实例进程

ps -ef | grep ora_ | grep -v grep

查看监听状态

lsnrctl status

登录sqlplus,查看实例状态

sqlplus / as sysdbaselect status from v$instance;

出现以下情况,解决方式如下:输入startup,根据提示信息,将$ORACLE_BASE/admin/数据库名称/pfile目录下的init.ora.xxx形式的文件copy到$ORACLE_HOME/dbs目录下initoracle.ora(根据startup提示)即可。

查看数据库编码

select userenv(‘language‘) from dual;

查看数据库版本信息

select * from v$version;

激活scott用户

alter user scott account unlock;alter user scott identified by tiger;select username,account_status from all_users;

13、Navicat远程连接Oracle

开放1521端口

firewall-cmd --zone=public --add-port=1521/tcp --permanentfirewall-cmd --reload

官方网站 
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 
下载 instantclient-basic,解压压缩文件

下载Navicat 
http://pan.baidu.com/s/1c2GP9U4 
打开Navicat,工具→选项

打开OCI界面,在右侧OCI library一栏中选择instantclient-basic解压目录下的oci.dll,然后点击确定。

重启Navicat,点击连接,选中Oracle

IP为Oracle服务器的IP地址,服务名为Oracle的实例名,可忽略大小写

select instance_name from v$instance;

用户名使用刚激活的scott,密码为tiger,填完以上信息后点击连接测试

到此Navicat远程连接Oracle数据库成功。

14、设置Oracle开机启动

vi /db/app/oracle/product/11.2.0/bin/dbstart

ORACLE_HOME_LISTNER=$ORACLE_HOME

vi /db/app/oracle/product/11.2.0/bin/dbshut

ORACLE_HOME_LISTNER=$ORACLE_HOME

vi /etc/oratab

`orcl:/db/app/oracle/product/11.2.0:Y

vi /etc/rc.d/init.d/oracle

#! /bin/bash

# oracle: Start/Stop Oracle Database 11g R2

#

# chkconfig: 345 90 10

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

#

# processname: oracle

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

LOCKFILE=/var/lock/subsys/oracle

ORACLE_HOME=/db/app/oracle/product/11.2.0

ORACLE_USER=oracle

case "$1" in

‘start‘)

if [ -f $LOCKFILE ]; then

echo $0 already running.

exit 1

fi

echo -n $"Starting Oracle Database:"

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

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

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

touch $LOCKFILE

;;

‘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‘)

$0 stop

$0 start

;;

‘status‘)

if [ -f $LOCKFILE ]; then

echo $0 started.

else

echo $0 stopped.

fi

;;

*)

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

exit 1

esac

exit 0

开机启动oracle

systemctl enable oracle

15、开机启动问题

oracle ORA-12547: TNS:lost contact

cd /db/app/oracle/product/11.2.0/bin/

chmod 6751 oracle

TNS-12555: TNS:permission denied

cd /var/tmp

chown -R oracle:oinstall .oracle

转载地址:https://blog.csdn.net/h8178/article/details/78251198

原文地址:https://www.cnblogs.com/yylyu/p/10662420.html

时间: 2024-08-30 16:50:11

centos7最小化安装Oracle11gR2的相关文章

Centos7最小化安装下安装,编译lamp环境

centos7默认的php是5.5,mysql已经变为mariadb,如果想要自定义的配置,需要自己手动来编译配置.以下步骤在公司服务器上已经正常操作过. 1.安装centos7选择基本安装,配置完网络后首先要先关闭firewall: 停止firewall # systemctl stop firewalld.service 禁止firewall开机启动 # systemctl disable firewalld.service 2.安装iptables防火墙 yum方式安装iptables #

centos7最小化安装

centos7最小化安装的时候有些命令是不包含的,所以一开始需要做一些配置才能正常使用. 1. 查看网络命令ifconfig 首先修改网卡配置文件 #vi /etc/sysconfig/network-scripts/ens33 修改配置文件为开机启动,不然后续没法安装 ONBOOT=yes 重启网卡 #service network restart 2. 安装net-tools,因为它包含了ifconfig这个命令 #yum -y install net-tools

centos7 最小化安装 无 ifconfig,netstat 的安装

centos7 最小化安装之后,默认是没有 ifconfig,netstat命令的: 我们可以直接使用 yum -y install net-tools 即可: 1. 先来看下 net-tools的信息 yum info net-tools 可安装的软件包 名称 :net-tools 架构 :x86_64 版本 :2.0 发布 :0.17.20131004git.el7 大小 :304 k 源 :base/7/x86_64 简介 : Basic networking tools 网址 :http

CentOS7最小化安装下源码编译搭建LAMP环境

CentOS7最小化安装 CentOS7官网下载:http://www.centos.org 1.为了方便与主机交换文件建立共享文件夹:点击对话框顶部"选项",选择"共享文件夹",右侧点击"总是启用"点击"添加"按提示添加自己想要添加的目录,然后点击"确认",完成虚拟机设置. 2.按"Enter"建,选择"install CentOS 7".选择"中文 Ch

centos7 最小化安装后的配置优化

echo #CENTOS7echo #1.最小化安装之后需要做的事echo 2.配置echo 2.1 安装网络yum install net-tools -y echo 2.2 更新机器名echo hdp1.student >/etc/hostname echo 2.3.配置防火墙  echo #关闭防火墙systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动

Centos7最小化安装之后,需要做那些事情?

背景:最近,开发部需要用到linux开发环境,指定要最新版本的Centos, 好吧.我从官网下载了Centos7.2的镜像,采用最小化安装模式,安装之后我们要做那些事情呢? 下面详述. 版本:Centos 7.2.1511 注:本文红色部分是需要修改的内容,特殊标注出来. 一 . 配置IP地址,接通网络.网络一通,万事OK TYPE=EthernetBOOTPROTO=staticDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILURE_FATAL=no

CentOS7最小化安装以后没有ifconfig这个命令的解决方案

前几天我最小化安装了一下CentOS7,进入系统发现没有ifconfig这个网络配置工作,又想急着上网,那怎么办呀.下面是我给出的解决方法: 1.用光驱配置yum源,安装net-tools这个软件包(或者用rpm这个命令).     1.1.把CentOS默认的yum源除(CentOS-Media.repo)都移动到一个指定的目录,我是在yum源配置文件存放目中建了一个叫repo的子目录,以下是具体操作:     [[email protected] ~]# cd /etc/yum.repos.

CentOS7最小化安装配置IP

CentOS7配置IP: 因为是我们安装的CentOS操作系统是最小化安装的,所以没有图形界面和一些软件或插件的.IP也是没有配置的我们需要手动配置IP,然后使用远程终端通过这个IP去连接操作系统,在终端上操作要比在虚拟机里操作方便. 因为在虚拟机里不能够用鼠标复制粘贴或者用滚轴上下滑动界面,例如要使用一个网址下载东西的话,总共不可能把这个网址一点点的从头敲到尾吧,即使有人愿意这么做,效率也太低了.如果是使用远程终端的话可以在我们的Windows操作系统上安装这个远程终端软件,然后可以将Wind

centos7 最小化安装没有ifconfig及修改网卡名enoxxx为ethX

问题: 1.最小化安装centos7后发现无ifconfig命令 想通过ifconfig查看ip地址发现ifconfig命令不存在,可通过命令 #ip addr       //查看ip 或者 解决: #yum -y install net-tools 问题: 2.centos7默认将网卡1命名为eno16777736,如何修改回熟悉的eth0 解决: [[email protected] ~]# cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIB