Oracle Database, 又名 Oracle RDBMS, 或简称 Oracle. 是甲骨文公司的一款关系数据库管理系统. 它是在数据库领域一直处于领先地位的产品. 可以说 Oracle 数据库系统是目前世界上流行的关系数据库管理系统, 系统可移植性好, 使用方便, 功能强, 适用于各类大, 中, 小, 微机环境. 它是一种高效率, 可靠性好的 适应高吞吐量的数据库解决方案.
ORACLE 数据库系统是美国 ORACLE 公司 (甲骨文) 提供的以分布式数据库为核心的一组软件产品, 是目前最流行的客户 / 服务器 (CLIENT/SERVER) 或 B/S 体系结构的数据库之一. ORACLE 数据库是目前世界上使用最为广泛的数据库管理系统, 作为一个通用的数据库系统, 它具有完整的数据管理功能; 作为一个关系数据库, 它是一个完备关系的产品; 作为分布式数据库它实现了分布式处理功能.
下面为 oracle 结构图:
Oracle 12C 引入了 CDB 与 PDB 的新特性, 在 ORACLE 12C 数据库引入的多租用户环境 (Multitenant Environment) 中, 允许一个数据库容器 (CDB) 承载多个可插拔数据库(PDB).CDB 全称为 Container Database, 中文翻译为数据库容器, PDB 全称为 Pluggable Database, 即可插拔数据库. 在 ORACLE 12C 之前, 实例与数据库是一对一或多对一关系(RAC): 即一个实例只能与一个数据库相关联, 数据库可以被多个实例所加载. 而实例与数据库不可能是一对多的关系. 当进入 ORACLE 12C 后, 实例与数据库可以是一对多的关系.
安装环境要求:
硬盘不少于 50G
内存不低于 4G
swap 交换分区不少于 8G
所挂载的磁盘类型为 xfs
系统环境:
- CentOS 7
- IP:192.168.199.130
硬盘挂载目录 /orc
软件包链接: https://pan.baidu.com/s/1L3uH4h7-xOuT3mMDd1_pIg
提取码: jvcx
oracle 官网: https://www.oracle.com/index.html
下面我进行安装演示:
1 关闭防火墙自启动, 以及相关功能和增强性安全功能
- systemctl disable firewalld.service
- systemctl stop firewalld.service
- setenforce 0
2 更改主机名 oracle
- VIM /etc/hostname
- HOSTNAME=oracle
3 添加本地主机名与本地 IP 地址的映射
- VIM /etc/hosts
- 192.168.199.130 oracle
4 安装软件环境包
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
5 调整内核参数
- 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
6 创建用户和组并给文件赋予权限
- groupadd oinstall #创建安装组
- groupadd dba #创建管理员组
- useradd -g oinstall -G dba oracle #创建 oracle 用户
- passwd oracle // 密码 123123
- mkdir -p /orc/App/oracle #创建 oracle 的工作目录
- chown -R oracle:oinstall /orc/App/
- chmod -R 755 /orc/App/oracle/
7 用户环境配置
- 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
source /home/oracle/.bash_profile #重新加载环境变量
8 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 #重新加载环境变量
9 安装 oracle, 把解压的 database 包挂载在 Linux /abc 中
- mkdir /abc
- mount.cifs //192.168.199.1/database /abc
10 下面的步骤在 Linux 的图形化界面操作
xhost + #以 root 用户在图形化界面操作
- su - oracle #切换 oracle 用户
- export DISPLAY=:0.0 #设置图形化界面显示
- cd /abc
- ./runInstaller #执行 abc 目录下的该脚本
执行完 runInstaller 脚本后便会出现 oracle 的安装界面
在安装至 79% 时会跳出一个界面, 这是需要根据它的要求以'root'用户执行这两个脚本, 可以在远程操作界面上执行.
先以'root'用户执行第一条命令
接着执行第二条命令, 根据提示选择 yes, 如果没有提示可以直接回车
- /orc/App/oracle/product/12.2.0/dbhome_1/root.sh
- Performing root user operation.
- The following environment variables are set as:
- ORACLE_OWNER= oracle
- ORACLE_HOME= /orc/App/oracle/product/12.2.0/dbhome_1
- Enter the full pathname of the local bin directory: [/usr/local/bin]:
- Copying dbhome to /usr/local/bin ...
- Copying oraenv to /usr/local/bin ...
- Copying coraenv to /usr/local/bin ...
- Creating /etc/oratab file...
- Entries will be added to the /etc/oratab file as needed by
- Database Configuration Assistant when a database is created
- Finished running generic part of root script.
- Now product-specific root actions will be performed.
- Do you want to setup Oracle Trace File Analyzer (TFA) now ? yes|[no] :
- yes
- Installing Oracle Trace File Analyzer (TFA).
- Log File: /orc/App/oracle/product/12.2.0/dbhome_1/install/root_oracle_2018-10-10_11-41-29-314304832.log
- Finished installing Oracle Trace File Analyzer (TFA)
两条命令执行完成后再次到这个界面点击确定
最后点击关闭完成安装
11 在浏览器上访问 https://192.168.199.130:5500/em 可以进入 oracle 的监控页面, 登录用户为'sys', 这是 oracle 的管理员用户, 密码填写自己之前设定的即可
登入后便会显示该界面
sqlplus / as sysdba #进入数据库
来源: http://www.bubuko.com/infodetail-2802506.html