行方服务器无X界面,只能使用纯命令安装方式。提供RHEL全量系统镜像。
在网上搜了搜,参照CSDN作者“西伯利亚疯狂的蚯蚓”的安装过程成功安装oracle11gR2
1 硬件要求
1.1 内存 & swap
物理内存不少于1G
硬盘可以空间不少于5G
swap分区空间不少于2G
Minimum: 1 GB of RAM
Recommended: 2 GB of RAM or more
2 软件
系统平台:RHEL7.3
Oracle版本:Oracle11gR2
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
3 安装注意
注意root和oracle用户下使用命令
[root@localhost ~]#
[oracle@localhost ~]#
本文中的命令和文本内容,不能完全直接复制使用!
4 安装前准备
首先,请先以root账号登入作一些前置设定作业。
输入密码后进入root账户
4.1 操作系统准备
查看主机名
[root@localhost ~]#hostname
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 localhost
服务器IP 服务器主机名
4.2关闭、防火墙
关闭selinux
[root@localhost ~]#vi /etc/selinux/config
设置SELINUX=disabled
[root@localhost ~]#systemctl stop firewalld
防火墙临时关闭命令:
[root@localhost ~]#systemctl status firewalld
查询开机是否启动防火墙:
[root@localhost ~]#systemctl is-enable firewalld
防火墙开机不启动命令:
[root@localhost ~]#systemctl disable firewalld
4.3挂载光驱,使用ISO文件为镜像源
挂载光驱
[root@localhost ~]#mkdir /mnt/cdrom
[root@localhost ~]#mount -t iso9660 /dev/cdrom /mnt/cdrom
[root@localhost ~]#cd /etc/yum.repos.d/
[root@localhost ~]#mv *.repo repo.bck
[root@localhost ~]#vim iso.repo
[Server]
name=Server
enabled=1
gpgcheck=0
[HighAvailability]
name=HighAvailability
enabled=1
gpgcheck=0
[LoadBalancer]
name=LoadBalancer
enabled=1
gpgcheck=0
安装所需包
[root@localhost ~]#yum clean all
[root@localhost ~]#yum update
[root@localhost ~]#yum install binutils-2.* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh-2* libaio-0.* libaio-devel-0.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh*
4.4 创建安装用户、组、目录
4.4.1创建安装用户和组
[root@localhost ~]# groupadd oinstall
[root@localhost ~]# groupadd dba
[root@localhost ~]# useradd -g oinstall -G dba -m oracle
[root@localhost ~]# passwd oracle
4.4.2创建软件安装目录
[root@localhost ~]#mkdir -p /opt/oracle //$ORACLE_BASE
[root@localhost ~]#mkdir -p /opt/oracle/product/112010/db_1 //$ORACLE_HOME
[root@localhost ~]#mkdir /opt/oracle/oradata //存放数据库目录
[root@localhost ~]#mkdir /opt/oracle/inventory
[root@localhost ~]#mkdir /opt/oracle/flash_recovery_area
[root@localhost ~]#chown -R oracle:oinstall /opt/oracle
[root@localhost ~]#chmod -R 775 /opt/oracle
4.4.3 将oracle使用者加入到sudo群组中
[root@localhost ~]#vi /etc/sudoers
输入上面的命令后,打开sudoers文件进行编辑,找到
root ALL=(ALL) ALL
这行,并且在底下再加入以下命令:(按esc退出insert插入模式,按下i进入编辑模式)
oracle ALL=(ALL) ALL
按下esc,直到退出insert模式,在最底下空白行输入“:wq!”(由于这是一份只读文档所以需要再加上!)并且按下Enter
修改后,可以打开/etc/sudoers文件确认一下修改是否完成
注:修改文件保存退出:“:wq”,不保存直接退出:”:q”,强制执行在命令后加”!”
4.5 配置系统环境
4.5.1 修改内核参数
[root@localhost ~]#vi /etc/sysctl.conf
修改、添加以下内容(不能小于下面的数值,灰色的是已存在的不能比这个小)
kernel.shmall=2097152
kernel.shmmax=1073741824
fs.aio-max-nr=1048576
fs.file-max=6815744
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
修改完毕后,启用配置
[root@localhost ~]#sysctl -p
4.5.2修改用户限制文件
[root@localhost ~]#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
4.5.3关联设置
[root@localhost ~]#vi /etc/pam.d/login
行末添加以下内容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
4.5.4修改/etc/profile
[root@localhost ~]#vi /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
在root用户下,使用命令source profile使环境变量生效
[root@localhost ~]#source /etc/profile
4.5.5 修改用户环境变量
[root@localhost ~]#vi /home/oracle/.bash_profile
在最底下加入以下内容
# For Oracle
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/112010/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
使环境变量生效
[root@localhost ~]#source /home/oracle/.bash_profile
查看所有环境变量命令:
5正式安装
5.1解压oracle安装文件
Oracle 11g安装包:将安装包上传至服务器/home/oracle/ 下面,这两个包属于oracle用户
linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip
安装包解压命令(使用oracle用户解压 )
[oracle@localhost ~]#unzip linux.x64_11gR2_database_1of2.zip
[oracle@localhost ~]#unzip linux.x64_11gR2_database_2of2.zip
解压完成后/opt/oracle下会生成database目录
5.2 编辑oracle数据库安装应答文件
1、/home/oracle/database/response(解压后的文件中)下有有db_install.rsp、dbca.rsp和netca.rsp三个应答文件,分别数据库安装文件、建立数据库实例和监听配置安装文件
[oracle@localhost ~]#vi db_install.rsp
修改以下内容
oracle.install.option=INSTALL_DB_SWONLY //29 行 安装类型
ORACLE_HOSTNAME=chances //37 行 主机名称
UNIX_GROUP_NAME=oinstall //42 行 安装组
INVENTORY_LOCATION=/opt/oracle/inventory //47 行 INVENTORY目录
SELECTED_LANGUAGES=en,zh_CN //78 行 选择语言
ORACLE_HOME=/opt/oracle/product/112010/db_1 //83 行 oracle_home
ORACLE_BASE=/opt/oracle //88 行 oracle_base
oracle.install.db.InstallEdition=EE //99 行 oracle版本
oracle.install.db.DBA_GROUP=dba //142行dba用户组
oracle.install.db.OPER_GROUP=oinstall //147行oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //160行 数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //165行globalDBName
oracle.install.db.config.starterdb.SID=orcl //170行SID
oracle.install.db.config.starterdb.memoryLimit=800 //200行 自动管理内存的最小内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle //233行 设定所有数据库用户使用同一个密码
DECLINE_SECURITY_UPDATES=true //385行 设置安全更新
5.3安装
使用oracle用户安装
[root@localhost ~]#su oracle
进入刚才解压的database目录
[oracle@localhost ~]#cd /home/oracle/database/
[oracle@localhost ~]#./runInstaller -silent -responseFile /home/oracle/database/response/db_install.rsp -ignorePrereq
接下来就是等待(有点长,不要着急!!!)开始计时,快的话10分钟左右。(安装好的图示在下页)
安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行,如果出现[FATAL],则安装程序已经停止了。
可以在以下位置找到本次安装会话的日志:
/optoracle/oraInventory/logs/installActions2015-06-08_04-00-25PM.log
可以使用命令查看日志:后面的地址应该以安装过程中的提示为准
[oracle@localhost ~]#tail -100f /optoracle/oraInventory/logs/installActions2015-06-08_04-00-25PM.log
安装过程是没有任何进度提示的,最多只能通过日志文件查看!
安装好或者是失败会有提示如下所示,是安装成功的信息提示。
5.4 安装后操作
按照要求执行脚本。
打开新的终端,以root身份登录,执行脚本:
[root@localhost ~]#/opt/oracle/inventory/orainstRoot.sh
[root@localhost ~]#/opt/oracle/product/112010/db_1/root.sh
完成后,返回原来的终端按下回车键
Oracle11g的安装就到此结束!
6 配置监听
编辑oracle安装目录下的netca.rsp应答文件,地址为:
/home/oracle/database/response/netca.rsp,主要查看以下参数配置:
INSTALL_TYPE=""custom""安装的类型
LISTENER_NUMBER=1监听器数量
LISTENER_NAMES={"LISTENER"}监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"}监听器使用的通讯协议列表
LISTENER_START=""LISTENER""监听器启动的名称
检查完毕后,执行命令:
[oracle@localhost ~]#netca /silent /responseFile /home/oracle/database/response/netca.rsp
执行后成功如下所示:
成功运行后,在/opt/oracle/product/112010/network/admin/中生成listener.ora和sqlnet.ora
安装完成后通过netstat命令可以查看1521端口正在监听(重开一个窗口)
[root@localhost ~]#netstat -tnulp | grep 1521
错误:
出现某某文件too short的错误,很有可能是操作系统有问题,建议重装linux系统。
错误:
进入红色部分去看一下日志 #cat 路径
看到日志一大堆,最下面是关键host的ip回环没有配好,由于新系统,系统的host是默认的。
解决:
我们要用自己的host名:
[root@localhost ~]#hostname
[root@localhost ~]#vi /etc/hosts
[root@localhost ~]#vi /etc/sysconfig/network
这步最早已经做过了(见4.1),这一步完成只是临时的,重启后据说就不行了
下面修改正式的内容:
由于上面执行netca的时候已经生成了listener监听了,所以我们需要修改下面文件:
$vi $ORACLE_HOME/network/admin/listener.ora
这里把localhost 改成本机ip保存退出就好了
下面我们继续开启监听:$lsnrctl start 有一大堆东西,然后就可以继续下一步
7 添加数据库实例
7.1 修改/home/oracle/database/response/dbca.rsp(就是解压安装文件目录下的)
根据数据库建立方式的不同编辑不同的数据库库选项。
比如在本次安装过程中设置了下列参数:(注意下面参数视情况而定,不要照抄,原文件都有说明的)
RESPONSEFILE_VERSION ="11.2.0" //不能更改
OPERATION_TYPE ="createDatabase"
GDBNAME ="orcl" //数据库的名字
SID ="orcl" //对应的实例名字
TEMPLATENAME ="General_Purpose.dbc" //建库用的模板文件
SYSPASSWORD ="oracle" //SYS管理员密码
SYSTEMPASSWORD ="oracle" //SYSTEM管理员密码
SYSMANPASSWORD= "oracle"
DBSNMPPASSWORD= "oracle"
DATAFILEDESTINATION =/opt/oracle/oradata //数据文件存放目录
RECOVERYAREADESTINATION=/opt/oracle/flash_recovery_area //恢复数据存放目录
CHARACTERSET ="ZHS16GBK" //字符集,重要!!!建库后一般不能更改,所以建库前要确定清楚。
TOTALMEMORY ="6553" //物理内存8G*80%。
7.2 安装
进入oracle安装目录的bin下,执行dbca命令
[oracle@localhost ~]#dbca -silent -responseFile /home/oracle/database/response/dbca.rsp
这里界面可能会出现闪动,可以等全部东西都不见了,是要输入SYS密码,但不知道为什么看不见提示,一闪而过。
然后输入完毕按下回车,又看见SYSTEM密码一闪而过,再次输入密码回车,这时就开始建库了。
完成(上述输入密码的步骤有可能直接略过)
建库后进行实例进程检查:
[oracle@localhost ~]#ps -ef | grep ora_ | grep -v grep
查看监听状态:
[oracle@localhost ~]#lsnrctl status
修改/opt/oracle/product/112010/db_1/bin/dbstart,否则dbstart命令会报错,重启后无法使用dbstart启动数据库
[oracle@localhost ~]#vi /opt/oracle/product/112010/db_1/bin/dbstart
将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
修改/opt/oracle/product/112010/db_1/bin/dbshut
[oracle@localhost ~]#vi /opt/oracle/product/112010/db_1/bin/dbshut
将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
修改/etc/oratab文件
[oracle@localhost ~]#vi /etc/oratab
将orcl:/data/oracle/product/11.2.0:N中最后的N改为Y,成为
orcl:/data/oracle/product/11.2.0:Y
输入命令dbshut和dbstart测试
[oracle@localhost ~]#dbshut
Oracle监听停止,进程消失。
[oracle@localhost ~]#lsnrctl status
[oracle@localhost ~]#ps -ef |grep ora_ |grep -v grep
Oracle 监听启动,进程启动。
[oracle@localhost ~]#dbstart
[oracle@localhost ~]#lsnrctl status
[oracle@localhost ~]#ps -ef |grep ora_ |grep -v grep
登录查看实例状态:
[oracle@localhost ~]#sqlplus / as sysdba
错误:
解决:
[oracle@localhost ~]#echo $ORACLE_HOME
[oracle@localhost ~]#echo $ORACLE_SID
[oracle@localhost ~]#export ORACLE_SID=orcl
SID看自己设的什么或者$env |grep ORACLE
继续
SQL> select status from v$instance;
错误:
解决:
该问题一般是认为sid设置混乱造成,oracle安装过程中有几个地方都设置sid和数据库名称之类的,很容易记错。
SQL>shutdown
SQL>quit
[root@localhost ~]#dbshut
[root@localhost ~]#dbstart
重新:[root@localhost ~]#sqlplus / as sysdba
SQL>startup
8 收尾
8.1完成之后,我们需要将selinux打开
不然重启会出现问题,无法开机!!!
#vi /etc/selinux/config
将之前的disabled 改成targeted 然后就可以安心了。
8.2检查listener.ora
/opt/oracle/product/112010/db_1/network/admin/listener.ora
如果在安装监听过程中出现什么问题,可以将这个文件删除,然后重新执行netca步骤
里面的内容应该是这样的
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /opt/oracle/product/112010/db_1)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.168.1.48)(PORT = 1521))
)
)
ADR_BASE_LISTENER = /opt/oracle
接下来:
如果在lsnrctl start 或是lsnrctl status中有看到下面红色部分:
那么需要执行以下步骤:
sql> alter system register
sql> show parameter local_listener
(address=(protocol=tcp)(host=192.168.129.201)(port=1521))
而listener实际用的ip是192.168.155.100。
发现这台机器有两张网卡,ip分别为:192.168.155.100和192.168.129.201,之前有维护人员大概想将listener绑定到192.168.129.201这个ip上,但采用的方法不对。
修改local_listener参数,sql> alter system set local_listener='';
再重新注册服务,sql> alter system register;
查看注册情况,$ lsnrctl status
8.3最后:看看密码
9 卸载ORACLE
Oracle卸载
1.停止监听服务(oracle用户登录)
[oracle@localhost ~]# lsnrctl stop
2.停止数据库
[oracle@localhost ~]# sqlplus / as sysdba
SQL>shutdown
3.删除oracle安装路径(root用户登录)
[root@localhost ~]# rm -rf /opt/oracle/product
[root@localhost ~]# rm -rf /opt/oracle/inventory
……安装前创建的和安装后生成的都删掉(oracle解压文件database不要误删)
4.删除系统路径文件(root用户登录)
[root@localhost ~]#rm -rf /usr/local/bin/dbhome
[root@localhost ~]#rm -rf /usr/local/bin/oraenv
[root@localhost ~]#rm -rf /usr/local/bin/coraenv
5.删除数据库实例表(root用户登录)
[root@localhost ~]#rm -rf /etc/oratab
6.删除数据库实例lock文件(root用户登录)
[root@localhost ~]#rm -rf /etc/oraInst.loc
7.删除oracle用户及用户组(root用户登录)重装oracle的话就不用删了
[root@localhost ~]#userdel -r oracle
[root@localhost ~]#groupdel oinstall
[root@localhost ~]#groupdel dba
10 其他操作
开启oracle服务:
[oracle@localhost ~]#dbstart
[oracle@localhost ~]#lsnrctl start
[oracle@localhost ~]#sqlplus / as sysdba
SQL>startup
关闭oracle服务:
[oracle@localhost ~]#dbshut
[oracle@localhost ~]#lsnrctl stop
[oracle@localhost ~]#sqlplus / as sysdba
SQL>shutdown
感谢原作者大大,我只是搬运整理后适用于 rhel7.3 server.. 顺便填了原文的几个坑.
创建数据库实例的配置文件,原文SID = 'ORCL' 而不是 orcl .
- RHEL 无图形界面安装oracle 11gr2
RHEL7.3 无图形界面安装oracle 11gr2 使用纯命令安装方式.提供RHEL全量系统镜像. 1.oracle官方下载地址:https://www.oracle.com/techne ...
- 【CentOS】在Centos7 下无图形界面安装 Oracle11g
目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本 ① 系统要求以及准备 1. 物理内存不小于1G: 查看方式: # grep MemTotal /proc/meminfo ...
- 无图形界面安装CentOS
有些插在ATCA中的x86刀片虽然是提供了Micro HDMI显示接口的,但是可能由于厂家出于节省成本的考量,没有给板卡配备显卡,那么在无图形界面下安装系统,就成为一个运维人员应知的一件事情.这里我们 ...
- Linux CentOS7 下无图形界面安装Oracle11G R2版本
01,系统 Centos7 数据库版本 Oracle_11gR2 ,以及硬件要求 内存不能小于 1G,可用硬盘不小于8G Swap分区空间不小于2G grep MemTotal /proc/memin ...
- Linux下无图形界面安装Matlab
1 下载R2015b_glnxa64.iso和破解文件Matlab+2015b+Linux64+Crack 百度网盘可以直接搜索资源.推荐一个可以多线程下载百度网盘超大文件的工具Aria2,均速1.3 ...
- 目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本
参考: https://www.cnblogs.com/yejingcn/p/10278473.html centos7启动oracle su - oracle //切换到自己的oracle账户 ls ...
- Oracle 12cR1 RAC集群安装(二)--使用图形界面安装
Oracle 12cR1 RAC集群安装文档:Oracle 12cR1 RAC集群安装(一)--环境准备Oracle 12cR1 RAC集群安装(二)--使用图形界面安装Oracle 12cR1 RA ...
- CentOS安装Oracle 11gR2(x64)
本文主要步骤是参考:https://www.linuxidc.com/Linux/2014-02/97374.htm 后来自己加入了一些安装过程中遇到的问题和解决方法.使用图形界面安装Oracle已经 ...
- [转]Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装) --有部份地方有问题
Oracle 11g 基于CentOS7静默安装教程(无图形界面,远程安装) [转载]原文地址:http://canonind.blog.51cto.com/8239025/1883066 一.安装前 ...
随机推荐
- Angular Js 控制器
在Angularjs中用ng-controller指令定义了应用程序中的控制器:例如: <div ng-app="myApp" ng-controller="myC ...
- Http请求和响应
Http请求和响应 Http协议对浏览器发出的Request格式以及对Web服务器发出的Response格式有具体的规定. 请求部分由三部分组成: Requset line:请求行,位于第一行 Req ...
- hdu3572线性欧拉筛
用线性筛来筛,复杂度O(n) #include<bits/stdc++.h> #include<ext/rope> #define fi first #define se se ...
- ES _all、_source的使用——_all字段连接所有字段的值构成一个用空格(space)分隔的大string而被analyzed和index,document主体保存在_source中
1._all 1.1_all field _all字段是一个很少用到的字段,它连接所有字段的值构成一个用空格(space)分隔的大string,该string被analyzed和index,但是不被s ...
- codeforces 707A A. Brain's Photos(水题)
题目链接: A. Brain's Photos 题意: 问是黑白还是彩色; 思路: 没有思路: AC代码: #include <iostream> #include <cstdio& ...
- stl_hashtable.h
stl_hashtable.h // Filename: stl_hashtable.h // Comment By: 凝霜 // E-mail: mdl2009@vip.qq.com // Blog ...
- Qt Create 4.6.2无法自动生成Android Kit
开发环境: OS,Microsoft Windows [Version 10.0.17134.523] Qt,5.11.1 Qt Creator,4.6.2 JDK,1.8.0_181 Android ...
- 洛谷 P1379 八数码难题
题目描述 在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字.棋盘中留有一个空格,空格用0来表示.空格周围的棋子可以移到空格中.要求解的问题是:给出一种初始布局(初始状态)和目标布局(为了 ...
- [转]CSS3盒模型display:box详解
时间:2014-02-25来源:网络作者:未知编辑:RGB display:box;box-flex是css3新添加的盒子模型属性,它的出现可以解决我们通过N多结构.css实现的布局方式.经典的一个布 ...
- DOM基础知识整理
--<JavaScript高级程序设计>Chapter10学习笔记 一.节点层次 1.Node类型 1)(Node).nodeType属性 节点nodeType属性有12种. 检测node ...