目录
前言
- Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品
- Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案
一、关于Oracle数据库
- 最流行的大型关系数据库
- 由甲骨文公司出品,目前最新版本为Oracle12c
- 本章以64位企业版Oracle12c为例
- 官方网站: https://www.oracle.com/cn
- 采用CIS模式、支持SQL查询语言
- 在稳定性、高性能、安全性等方面优于其他数据库,因此常用于政府及企业
- 最新版本为19c
- 但是企业中大多用的是11g
- 32位系统最大支持内存不超过4GB
- 64为系统最大支持内存为2TB
- 优点
- 功能完善
- 安全
- 缺点
- 操作复杂
二、安装时的注意事项
2.1 安装linux操作系统时的注意事项
- 安装CentOS7操作系统的要求
- 防火墙的配置选项;禁用
- SELinux设置:禁用
- 默认安装:软件开发
- 内核:3.10.0.54.0.1.el7.x86_64及以上版本
补充:
centos 6系统内核版本2.6,centos 7系统内核版本3.1
2.2 oracle 12c 的安装条件
2.2.1 系统及配置要求
- 物理内存,不少于1GB
- 交换分区
- 物理内存为1~2GB时,设置为物理内存的1.5~2倍
- 物理内存为2~16GB时,设置与物理内存大小相同
- 磁盘空间,不少于15GB
- 拥有固定的FQDN名称,安装后不建议再更改
12c版本最少不能低于4G的swap交换分区,此处建议用8G
2.2.2 软件环境要求
- GNOME中文桌面环境
- 中文Java支持
- 安装所需软件包
2.2.3 内核要求
- 修改内存调度参数、端口范围、I/O请求……
2.2.4 用户环境要求
- 创建组账号oinstall、dba,用户账号oracle
- 创建Oracle基本目录
- 为用户oracle设置环境变量,并允许使用X终端
2.2.4 进程会话要求
- 增大用户oracle的进程数、文件数限制
三、编译安装Oracle
3.1 关闭防火墙,核心防护
systemctl stop firewalld #关闭防火墙
vi /etc/selinux/config #关闭核心防护
SELINUX=disabled
setenforce ? #查看状态
iptables -F #关闭防火墙规则
3.2 设置映射,改变主机名
hostnamectl set-hostname oracle #更改主机名oracle
vim /etc/hosts
20.0.0.25 oracle
3.3 软件环境包
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
3.4 调整内核参数
vim /etc/sysctl.conf
fs.aio-max-nr = 1048576 #异步IO请求数目 推荐值是:1048576 其实它等于 1024*1024 也就是 1024K 个
fs.file-max = 6815744 #打开的文件句柄的最大数量,防止文件描述符耗尽的问题
kernel.shmall = 2097152 #共享内存总量 页为单位,内存除以4K所得
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128 #SEMMSL: 每个信号集的最大信号数量 SEMMNS:用于控制整个 Linux 系统中信号的最大数 SEMOPM: 内核参数用于控制每个 semop 系统调用可以执行的信号操作的数量 SEMMNI :内核参数用于控制整个 Linux 系统中信号集的最大数量
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 ##重新加载配置文件
3.5 用户环境配置
创建两个组
创建oracle用户
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle #密码123123
注意这是在根目录下创建
mkdir -p /orc/app/oracle
chown -R oracle:oinstall /orc/app/
chmod -R 755 /orc/app/oracle/
vim /home/oracle/.bash_profile #oracle用户环境配置
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
3.6 oracle用户资源限制
使用pam_limits认证模块
vim /etc/pam.d/login
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
source /etc/profile
3.7 oracle 安装
mkdir /abc #在根目录下创建abc文件夹
cd abc
oracle 软件包 放入文件夹内
unzip linuxx64_12201_database.zip #解压
3.8 图形化界面操作
xhost + #以root用户在图形化界面操作 (中间有空格)
su - oracle #切换oracle用户 (注意:中间的-不能少 少了的话安装时就不是中文界面了,因为没有进入字符界面)
cd /abc
export DISPLAY=:0.0 '初始化像素'
cd database
./runInstaller '启动oracle程序'
3.8 oracle 图形化安装
3.9 oracle 图形化安装
取消箭头所指的勾选
出现下面这种情况,点击是
这里选择默认的”桌面类”,点击”下一步”继续
如果系统是服务器版本,如windows server则选择服务器版本
如果是群集的话,需要进行勾选
口令随便给
这边它会检查是否具备安装条件,如果不具备它会提醒报错
安装至 79%时 会提醒你执行配置脚本,只有脚本执行成功了,才能继续安装
这一步特别重要,否则无法继续安装
需要在root目录下执行
cd root
/orc/app/oraInventory/orainstRoot.sh
/orc/app/oracle/product/12.2.0/dbhome_1/root.sh
安装完成
四、测试安装
用chrome阅览器登录oracle
想访问oracle需要安装Flash,点击安装
进入登录界面
默认用户名 sys 登录
口令 :abc123
容器跳过
勾选身份
进入oracle