欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

带你详细了解Oracle数据库并安装——超详细的理论+实验!

程序员文章站 2022-04-10 12:39:48
...

一、关于Oralce数据库

        Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

1.1、Oracle数据库的特点

  1. 完整的数据管理功能
    1)数据的大量性
    2)数据的保存的持久性
    3)数据的共享性
    4)数据的可靠性

  2. 完备关系的产品
    1)信息准则—关系型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;
    2)保证访问的准则
    3)视图更新准则—只要形成视图的表中的数据变化了,相应的视图中的数据同时变化
    4)数据物理性和逻辑性独立准则

2.2、优点

  • 可用性强
  • 可扩展性强
  • 数据安全性强
  • 稳定性强

二、在Linux安装Oracle的注意事项

2.1、安装CentOS操作系统的要求

  • 防火墙配置选项:禁用(也可以 iptables -F 清空防火墙规则)
  • SELinux设置:禁用(关闭核心防护)
  • 内核:3.10.0.54.0.1.el7.x86_64及以上版本(uname -r 查看系统内核)

2.2、系统及配置要求

  • 物理内存:不少于1G
  • 交换分区
    1)物理内存为1 ~ 2GB时,设置为虚拟内存的1.5 ~ 2倍
    2)物理内存为2 ~ 16GB时,设置与虚拟内存大小相同
  • 磁盘空间:不少于15GB
  • 拥有固定的FQDN名称,安装好不建议在更改

2.3、软件环境要求

  • GNOME中文桌面环境
  • 中文JAva支持
  • 安装所需软件包

三、安装Oracle

3.1、安装配置

  • 基础配置
关闭防火墙自启动,以及相关功能和增强性安全功能
systemctl disable firewalld.service
systemctl stop firewalld.service
setenforce 0  ## 临时关闭核心防护
[aaa@qq.com ~]# hostnamectl set-hostname Oracle   //更改主机名Oracle
[aaa@qq.com ~]# su
[aaa@qq.com ~]# vim /etc/hosts
[aaa@qq.comracle ~]# 20.0.0.27 Oracle
  • 安装软件环境包
[aaa@qq.com ~]# yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
  • 调整内核参数
vim /etc/sysctl.conf

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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

sysctl -p   //重新加载配置文件
  • 用户环境配置
groupadd oinstall       ## 创建两个组 oinstall,dba
groupadd dba
useradd -g oinstall -G dba oracle   ## 创建一个 oracle 用户,可以进行登录待会安装时需要用到这个用户,oinstall 做基本组,dba 做附加组
passwd oracle   //密码123123
更改用户 oracle 的密码 。
新的 密码:## 输入123123
无效的密码: 密码少于 8 个字符  ## 没关系,不用管
重新输入新的 密码:  ## 输入123123
passwd:所有的身份验证令牌已经成功更新。
  • 添加磁盘设置
在虚拟机添加一块磁盘,并设置一下(这里添加磁盘步骤就不详细说明了)

[aaa@qq.com ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x5237cca3 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n  
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-104857599,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-104857599,默认为 104857599):
将使用默认值 104857599
分区 1 已设置为 Linux 类型,大小设为 50 GiB

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
  • 进行挂载
[aaa@qq.com ~]# mkfs -t xfs /dev/sdb1   ## 改变磁盘格式
[aaa@qq.com ~]# mkdir /orc/   ## 创建挂载目录
[aaa@qq.com ~]# vi /etc/fstab
/dev/sdb1       /orc    xfs     defaults 0 0
==》》wq
[aaa@qq.com ~]# mount -a
[aaa@qq.com ~]# mkdir -p /orc/app/oracle
[aaa@qq.com ~]# chown -R oracle:oinstall /orc/app/
[aaa@qq.com ~]# chmod -R 755 /orc/app/oracle/
  • 设置Oracle用户配置
[aaa@qq.com ~]# vim /home/oracle/.bash_profile
#PATH=$PATH:$HOME/.local/bin:$HOME/bin  ## 这一行可以加 # 号,因为和下面添加的代码重复了
export PATH  ## 这串代码也可以删掉了,全局环境变量,与下面添加的重复

添加如下代码
umask 022
ORACLE_BASE=/orc/app/oracle
ORACLE_HOME=/orc/app/oracle/product/12.2.0/dbhome_1/
ORACLE_SID=orcl
NLS_LANG="SIMPLIFIED CHINESE_CHINA".UTF8
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin
LANG=zh_CN.UTF-8
export PATH LANG NLS_LANG ORACLE_BASE ORACLE_HOME ORACLE_SID
 ==》》wq
 [aaa@qq.com ~]# source /home/oracle/.bash_profile
  • oracle用户资源限制
使用pam_limits认证模块
vim /etc/pam.d/login

# pam_selinux.so close should be the first session rule  ## 这行下方插入下面两句代码
session    required     /lib/security/pam_limits.so  ## 添加资源限制模块
session    required     pam_limits.so

vim /etc/security/limits.conf

oracle        soft    nproc           2047       #单用户可使用的进程数量
oracle        hard    nproc           16384
oracle        soft    nofile          1024       #用户可打开的文件数量
oracle        hard    nofile          65536
oracle        soft    stack           10240      #堆栈设置
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
[aaa@qq.com ~]# source /etc/profile
  • Oracle安装

这里要在图形化界面操作

[aaa@qq.com ~]# xhost +   //开启图形化界面授权,以root用户在图形化界面操作
[aaa@qq.com ~]# su - oracle   //切换oracle用户
[aaa@qq.com ~]# export DISPLAY=:0.0  ## 像素初始化
  • 解压软件包

创建一个目录用来存放 该软件包——在root用户下创建

[aaa@qq.com ~]$ mkdir /abc
[aaa@qq.com ~]$ cd /abc

然后用xhell把软件包放入 abc 目录里面,然后进行解压
[aaa@qq.com abc]# unzip linuxx64_12201_database.zip 
[aaa@qq.com abc]$ cd abc  ## 解压完之后查看一下
[aaa@qq.com abc]$ ll
总用量 3372752
drwxr-xr-x 7 root root        117 1月  26 2017 database
-rw-r--r-- 1 root root 3453696911 10月 20 11:53 linuxx64_12201_database.zip
  • 现在去图形化界面进行安装操作
现在图形化界面
[aaa@qq.com abc]$ cd database/
[aaa@qq.com database]$ ls
install  response  rpm  runInstaller  sshsetup  stage  welcome.html

[aaa@qq.com database]$ ./runInstaller   ## 执行完之后会出现Oracle的安装界面

带你详细了解Oracle数据库并安装——超详细的理论+实验!

带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!

注意:在 79% 时会出现这个弹窗

在 root 用户下输入下面两条命令

[aaa@qq.com ~]# /orc/app/oraInventory/orainstRoot.sh
[aaa@qq.com ~]# /orc/app/oracle/product/12.2.0/dbhome_1/root.sh
等输入完之后等待加载完成,然后就可以继续图形化的安装了。
不要再没有加载完的时候点击确定进行安装!

带你详细了解Oracle数据库并安装——超详细的理论+实验!

安装成功

带你详细了解Oracle数据库并安装——超详细的理论+实验!

3.2、测试Oracle数据库

  • 现在我们去测试一下是否可以登上Oracle数据库
[aaa@qq.com database]$ sqlplus / as sysdba
连接到: 
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>    ## 已连接

SQL> show user   ## 查看下当前用户
USER 为 "SYS"

3.3、在浏览器中登录Oracle数据库

  1. 我们下载Flash软件包

带你详细了解Oracle数据库并安装——超详细的理论+实验!

  1. 然后对其进行解压
[aaa@qq.com ~]# mkdir /flash   ## 创建 Flash目录用来存放解压文件
下载完之后解压到 flash目录里面
[aaa@qq.com ~]# tar zxvf flash_player_npapi_linux.x86_64.tar-1.gz -C flash

  1. 安装火狐浏览器插件
[aaa@qq.com ~]# cd flash/
[aaa@qq.com flash]# ll
总用量 18996
drwxrwxr-x 2 1002 dba       40 9月  25 19:50 LGPL
-rw-rw-r-- 1 1002 dba 16653576 9月  25 19:50 libflashplayer.so
-rw-rw-r-- 1 1002 dba  2792147 9月  25 19:50 license.pdf
-rw-rw-r-- 1 1002 dba     3572 9月  25 19:50 readme.txt
drwxrwxr-x 6 1002 dba       54 9月  25 19:50 usr

[aaa@qq.com flash]# cp libflashplayer.so /usr/lib64/mozilla/plugins ## 复制插件到火狐浏览器插件文件夹
  1. 因为插件的安装涉及到更改权限问题,所以设置下插件的权限
[aaa@qq.com flash]# cd /usr/lib64/mozilla/plugins
[aaa@qq.com flash]# chmod 755 libflashplayer.so
  1. 之后重新打开火狐浏览器,即可支持flash了

在浏览器输入 https://Oracle:5500/em

登录名:sys 密码:abc123 勾选:as sysdba

带你详细了解Oracle数据库并安装——超详细的理论+实验!
带你详细了解Oracle数据库并安装——超详细的理论+实验!