以Centos7为列

创建运行Oracle数据库的系统用户和用户组

 #切换root用户
[px@localhost /]$ su - root
[px@localhost /]$ su - root
密码:
#创建用户组oinstall
[root@localhost /]# groupadd oinstall
#创建用户组dba
[root@localhost /]# groupadd dba
#创建oracle用户并加入组oinstall和附加组dba
[root@localhost /]# useradd -g oinstall -G dba -m oracle
#设置oracle密码
[root@localhost /]# passwd oracle
#查看新建的oracle用户信息
[root@localhost /]# id oracle
uid=(oracle) gid=(oinstall) 组=(oinstall),(dba)

创建Oracle数据库安装目录

 #oracle数据库安装目录
[root@localhost home]# mkdir -p /home/app/oracle
#oracle数据库配置文件目录
[root@localhost home]# mkdir -p /home/app/oraInventory
#oracle数据库软件包解压目录
[root@localhost home]# mkdir -p /home/app/database
#创建完检查一下
[root@localhost app]# ls
database oracle oraInventory
#设置目录所有者为oinstall用户组的oracle用户
[root@localhost app]# chown -R oracle:oinstall /home/app/oracle
[root@localhost app]# chown -R oracle:oinstall /home/app/oraInventory
[root@localhost app]# chown -R oracle:oinstall /home/app/database

修改OS系统标识

 [root@localhost app]# cat /proc/version
Linux version 3.10.-.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8. (Red Hat 4.8.-) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015
[root@localhost app]# cat /etc/redhat-release
CentOS Linux release 7.2. (Core)
[root@localhost app]# vi /etc/redhat-release
[root@localhost app]# cat /etc/redhat-release
redhat-

安装oracle的依赖包

 #为了确保没问题多找了几个,我都执行了一遍(参考:https://docs.oracle.com/cd/E11882_01/install.112/e47689/pre_install.htm#BABCFJFG)

 yum -y install binutils compat-libcap1 compat-libstdc++- compat-libstdc++-*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp

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

 binutils-2.23.52.0.-.el7.x86_64
compat-libcap1-1.10-.el7.x86_64
gcc-4.8.-.el7.x86_64
gcc-c++-4.8.-.el7.x86_64
glibc-2.17-.el7.i686
glibc-2.17-.el7.x86_64
glibc-devel-2.17-.el7.i686
glibc-devel-2.17-.el7.x86_64
ksh
libaio-0.3.-.el7.i686
libaio-0.3.-.el7.x86_64
libaio-devel-0.3.-.el7.i686
libaio-devel-0.3.-.el7.x86_64
libgcc-4.8.-.el7.i686
libgcc-4.8.-.el7.x86_64
libstdc++-4.8.-.el7.i686
libstdc++-4.8.-.el7.x86_64
libstdc++-devel-4.8.-.el7.i686
libstdc++-devel-4.8.-.el7.x86_64
libXi-1.7.-.el7.i686
libXi-1.7.-.el7.x86_64
libXtst-1.2.-.el7.i686
libXtst-1.2.-.el7.x86_64
make-3.82-.el7.x86_64
sysstat-10.1.-.el7.x86_64

关闭防火墙

 --centos7默认用的firewalld作为防火墙
#查看防火墙状态
[root@localhost /]# systemctl status firewalld
#关闭防火墙
[root@localhost /]# systemctl stop firewalld
#禁止使用防火墙,重启后还是是禁止
[root@localhost /]# systemctl disable firewalld.service

关闭selinux(需重启生效)

 [root@localhost /]# vi /etc/selinux/config
#此处修改为disabled
[root@localhost /]# cat /etc/selinux/config
SELINUX=disabled

修改内核参数

 [root@localhost /]# vi /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_broadcasts =
net.ipv4.conf.all.rp_filter =
fs.file-max = #设置最大打开文件数
fs.aio-max-nr =
kernel.shmall = #共享内存的总量,8G内存设置:2097152*4k/1024/1024
kernel.shmmax = #最大共享内存的段大小
kernel.shmmni = #整个系统共享内存端的最大数
kernel.sem =
net.ipv4.ip_local_port_range = #可使用的IPv4端口范围
net.core.rmem_default =
net.core.rmem_max=
net.core.wmem_default=
net.core.wmem_max=
#使配置生效
[root@localhost /]# sysctl -p

对oracle用户设置限制,提高软件运行性能

 #添加如下内容
[root@localhost /]# vi /etc/security/limits.conf
oracle soft nproc
oracle hard nproc
oracle soft nofile
oracle hard nofile

配置oracle用户的环境变量

 [root@localhost /]# vim /home/oracle/.bash_profile
export ORACLE_BASE=/home/app/oracle #oracle数据库安装目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2./dbhome_1 #oracle数据库路径
export ORACLE_SID=gdlisnet #oracle启动数据库实例名
export ORACLE_TERM=xterm #xterm窗口模式安装
export PATH=/home/app/oracle/product/11.2./dbhome_1/bin:$PATH #添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/usr:/lib:/usr/lib #添加系统环境变量
export LANG=C #防止安装过程出现乱码
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题
#即时生效
[root@localhost /]# source /home/oracle/.bash_profile

上传Oracle安装包

安装包可去下载https://www.oracle.com/database/technologies/oracle-database-software-downloads.html
1 #将安装包上传到/usr/local/src,然后解压
[root@localhost /]# cd /usr/local/src/
#可以使用ftp上传,或者用rz,sz,如果没安装进行安装
yum -y install lrzsz
#上传完后解压
[root@localhost src]$ unzip linux.x64_11gR2_database_1of2.zip -d /home/app/database/  
[root@localhost src]$ unzip linux.x64_11gR2_database_2of2.zip -d /home/app/database/ 
[root@localhost src]# chown -R oracle:oinstall /home/app/database/database/

图形界面登录oracle用户安装

 #处理界面为英文或者中文,默认英文
[root@localhost /]# export LANG="en_US"
#中文
[root@localhost /]# export LANG="zh_CN"
#中文后会乱码,需要将中文包zysong.ttf拷入解决
[root@localhost /]# cp zysong.ttf /usr/share/fonts/zh_CN/TrueType/
#启动oralce安装,到/home/app/database/database/目录下,执行runInstaller
[oracle@localhost database]# ./runInstaller

安装检测,遇到问题,按照提示一个一个解决

我遇到交换空间不足问题(有些包是版本高,可直接忽略14)

 #swap空间不足解决 :(要求2.67G 实际2G)
#查看当前虚拟内存
[root@localhost /]# free -m  
#将当前swap空间由2048M 增加到 3048M 新增一个2014的swap文件
[root@localhost /]# dd if=/dev/zero of=/home/swap bs=1024 count=1024000  
[root@localhost /]# mkswap /home/swap
[root@localhost /]# free -m
#增加并启用虚拟内容
[root@localhost /]# swapon /home/swap  

如图:直接全部忽略,完成安装

安装到84%时候会出现灰色竖道,直接选中右键关闭即可,后边按提示执行脚本!

配置监听,创建实例

dbca创建数据库之前必须先配置监听,并且启动

 #现在root下执行xhost +
[root@localhost ~]# xhost +
xhost: unable to open display ""
#如果报错,执行如下,然后再执行xhost +
[root@localhost ~]# export DISPLAY=localhost:1
[root@localhost ~]# xhost +
xhost: unable to open display "localhost:1"
#然后切换到oracle用户
[root@localhost ~]# su - oracle
[oracle@localhost ~]$ export DISPLAY=:0.0
#建立监听
[oracle@localhost bin]$ ./netca
#创建监听完成查看监听,必须启动
[oracle@localhost bin]$ lsnrctl stat
15 [oracle@localhost bin]$ dbca

测试连接

 [root@localhost /]# su - oracle
[oracle@localhost ~]$ sqlplus /nolog SQL*Plus: Release 11.2.0.1. Production on Wed Aug :: Copyright (c) , , Oracle. All rights reserved. SQL> connect / as sysdba
Connected.
SQL> startup
ORACLE instance started. Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
Database mounted.
Database opened.

设置开机自启动

   #设置开机自启
[oracle@centos7 /]$ vim /etc/oratab
gdlisnet: /home/app/oracle/product/11.2.:Y
[oracle@centos7 bin]$ vim /home/app/oracle/product/11.2./bin/dbstart
#将ORACLE_HOME_LISTNER=$1改成
ORACLE_HOME_LISTNER=$ORACLE_HOME
[root@centos7 bin]# vim /etc/rc.local
su - oracle -c '/home/app/oracle/product/11.2.0/bin/lsnrctl start'
su - oracle -c '/home/app/oracle/product/11.2.0/bin/dbstart'
[root@centos7 bin]# chmod +x /etc/rc.d/rc.local #同步网络时间
[root@centos7 /]# yum -y install ntp
[root@centos7 /]# ntpdate -u ntp.api.bz
[root@centos7 /]# hwclock –w

开启防火墙

 #开启防火墙
systemctl start firewalld
#开放指定端口
firewall-cmd --zone=public --add-port=/tcp --permanent
#命令含义:
--zone #作用域
--add-port=/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
#重启防火墙
firewall-cmd --reload #查看端口号
#查看当前所有tcp端口·
netstat -ntlp
#查看所有1935端口使用情况·
netstat -ntulp |grep #iptables防火墙
/sbin/iptables -I INPUT -p tcp --dport -j ACCEPT

使用命令

lsnrctl status 查看状态

lsnrctl start 启动

lsnrctl stop 停止

sqlplus /nolog  //登录sqlplus

connect /as sysdba  //连接oracle

startup //起动数据库

shutdown //关闭数据库 shutdown immediate

exit  //退出sqlplus

环境变量改错的话,执行如下:

export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin

Linux图形界面安装Oracle11G(Centos7)的更多相关文章

  1. 【CentOS】在Centos7 下无图形界面安装 Oracle11g

    目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本 ① 系统要求以及准备 1. 物理内存不小于1G: 查看方式: # grep MemTotal /proc/meminfo ...

  2. linux图形界面安装

    1.问题现象 1.1 startx命令不可用 [root@linuxtest2 ~]# startx 1.3 init 5无法执行完成 [root@linuxtest2 ~]#init 5 2.问题原 ...

  3. Linux图形界面安装卸载,与命令界面之间的转换

    1.图形界面与命令界面之间的转换 软切换: ctrl+alt+F6进入命令行模式,ctrl+alt+F1进入图形界面,(有些情况下不管用) 注意: 该方法转为命令行界面后图形界面依然占据着系统资源. ...

  4. Linux CentOS7 下无图形界面安装Oracle11G R2版本

    01,系统 Centos7 数据库版本 Oracle_11gR2 ,以及硬件要求 内存不能小于 1G,可用硬盘不小于8G Swap分区空间不小于2G grep MemTotal /proc/memin ...

  5. 目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本

    参考: https://www.cnblogs.com/yejingcn/p/10278473.html centos7启动oracle su - oracle //切换到自己的oracle账户 ls ...

  6. 编译安装常用包+阿里镜像源-常用资源-系统-下载-科莱软件下载-docker仓库包-安全圈-杏雨梨云-图形界面安装-docker私有双仓库-阿里源报错处理-centos7目录大小

    yum install apr-util apr-util-devel apr apr-devel pcre pcre-devel zlib zlib-devel openssl openssl-de ...

  7. CentOS5.5 正式开始安装 Oracle 11g r2(图形界面安装)

    一.下载oracle 官方网站, 可以下载最新版本 Oracle Database 11g Release http://www.oracle.com/index.html CentOS5. i386 ...

  8. 在Red Hat Enterprise Linux 5 64-bit安装oracle11g r2

    网上这种文档一搜就一堆,没别的目的,刚接触oracle为了加深理解记忆.只要是跟我的版本一样操作系统和oracle软件,按照步骤肯定可以成功安装 在虚拟机上安装Red Hat Enterprise L ...

  9. [vt][xen]xenserver初始安装增加第二块硬盘&xen图形界面安装vm&设置xen里vm开机启动

    为XenServer挂载/增加第二块硬盘的方法 注意: xen6.x和xen7.x vm导出导入是不兼容的.这点有点蛋疼 新买机器后安装xenserver(一般都买刻录机+dvd来刻录xen官网的io ...

随机推荐

  1. C/C++编程笔记:C语言贪吃蛇源代码控制台(一),会动的那种哦!

    前几天有个同学加我QQ私聊我说他们老师布置了一个贪吃蛇,他不知道怎么写所以来找我求解,我给他简单讲解了思路和一些难点之后他也能够自己独立将项目完成了!考虑到更多同学可能有贪吃蛇上的问题,今天有时间就来 ...

  2. 牛客挑战赛40 VMware和基站 set 二分 启发式合并 区间覆盖

    LINK:VMware和基站 一道 做法并不常见的题目 看起来很难写 其实set维护线段就可以解决了. 容易想到 第二个操作借用启发式合并可以得到一个很不错的复杂度 不过利用线段树维护这个东西 在区间 ...

  3. luogu P4321 随机漫游 期望dp 二进制 高斯消元

    LINK:随机漫游 非常妙的一道题. 容易想到倒推期望. 设状态 f[i][j]表示到达第i个点 此时已经到达的集合为j能走到全集的期望边数. 只要求出来这个就能O(1)回答询问. \(f[i][j] ...

  4. mysqld_multi多实例部署

    mysql多实例部署 目录 mysql多实例部署 下载软件 配置用户和组并解压二进制程序至/usr/local下 创建实例数据存放的目录 初始化各实例 配置配置文件/etc/my.cnf 启动各实例 ...

  5. day11.函数的全局变量和局部变量

    一.定义 """ 局部变量 : 在函数内部定义的变量(局部命名空间) 全局变量 : 在函数外部定义的或者使用global在函数内部定义(全局命名空间) 作用域: 作用的范 ...

  6. Pytorch Autograd (自动求导机制)

    Pytorch Autograd (自动求导机制) Introduce Pytorch Autograd库 (自动求导机制) 是训练神经网络时,反向误差传播(BP)算法的核心. 本文通过logisti ...

  7. JS 筋斗云案例

    .nav { width: 1000px; height: 60px; line-height: 60px; margin: 0 auto; position: relative; } ul { wi ...

  8. 19、Java 序列化

    1.序列化的概念,意义以及使用场景 序列化: 将对象写入到IO流中,也就是把Java对象转换为字节序列的过程 反序列化: 从IO流中恢复对象*,也就是把字节序列恢复为Java对象的过程 意义: 序列化 ...

  9. Qt之先用了再说系列-定时器的用法

    Qt 定时器是一个比好用的东西,在此就地简单记录一下使用的方式: 1.首先包含头文件 #include <QTimer> 2.具体用法有几种,我就写其中2种吧 1>执行一次 这种方式 ...

  10. 复习 Array,重学 JavaScript

    1 数组与对象 在 JavaScript 中,一个对象的键只能有两种类型:string 和 symbol.下文只考虑键为字符串的情况. 1.1 创建对象 在创建对象时,若对象的键为数字,或者由 字母+ ...