Linux Docker 安装oracle19c数据库教程

发布于:2025-05-27 ⋅ 阅读:(38) ⋅ 点赞:(0)

Oracle 19c 是甲骨文公司(Oracle Corporation)发布的一款关系型数据库管理系统(RDBMS),属于 Oracle Database 19c 版本。它是 Oracle 12c 和 18c 系列的后续版本,提供了多个重要的功能改进和新特性,旨在提升数据库的性能、可扩展性和可靠性。Oracle 19c 的特点包括:

  1. 自动化与优化

    • 自动化管理功能:Oracle 19c 引入了更多的自动化管理特性,例如自动化的存储管理和内存管理,使数据库管理员的工作变得更加轻松。
    • 自动索引功能:Oracle 19c 在数据库中自动创建索引并在查询执行时根据需求优化索引,提高了查询效率。
  2. 性能提升

    • 采用了更高效的存储引擎和查询优化器,提高了数据处理的速度和吞吐量。
    • 高性能的 SQL 执行:增加了对大规模查询的优化,支持大数据量时仍能保证稳定的查询性能。
  3. 多云与混合云支持

    • 支持在多云环境下的运行,可以同时在多个云平台或本地数据中心中进行部署,提供灵活的云集成选项。
  4. 新功能

    • JSON 支持:Oracle 19c 增强了对 JSON 数据类型的支持,方便处理非结构化数据。
    • 自动化的数据加密:为提高数据安全性,Oracle 19c 提供了更加灵活和自动化的数据加密方案。
    • 多租户架构(CDB/PDB):引入了多租户架构,允许用户在单个数据库实例中创建多个数据库容器(PDB),实现资源共享和管理优化。
  5. 高可用性与灾难恢复

    • 提供了增强的备份、恢复和高可用性功能,包括更快的故障恢复和容灾能力。
  6. 版本稳定性

    • Oracle 19c 被认为是一个“长期支持版本”(Long Term Support,LTS),意味着该版本会得到长时间的更新和支持,适合用于企业级应用。

Oracle 19c 是企业级应用的理想选择,特别适合那些需要高性能、可靠性以及灵活扩展能力的环境。

下载地址:

Oracle 数据库下载官网:数据库软件下载 |神谕
SQL Develope 数据库连接工具下载官网:Oracle SQL Developer Downloads
国内容器镜像拉取地址:docker.io/heartu41/oracle19c:latest - 镜像下载 | docker.io

第一步 安装Docker


#移除旧的Docker版本
yum remove -y docker docker-client docker-client-latest docker-ce-cli docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
#清理旧缓存并重新生成
yum clean all
yum makecache
# 安装必要的依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加阿里云 Docker 的仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装Docker
yum install -y docker-ce-20.10.24 docker-ce-cli-20.10.24 containerd.io
#设置开机自启动
sudo systemctl enable docker
sudo systemctl start docker
sudo systemctl status docker
#查看可用的Docker版本
yum list docker-ce --showduplicates | sort -r
#查看docker版本
docker --version
#查看docker详细信息
docker info

第二步 拉取镜像 并启动

#拉取镜像 
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/heartu41/oracle19c:latest
#启动镜像命令
docker run -d \
  --name oracle19c-prod \
  --restart=unless-stopped \
  --cpus=2 \
  --memory=4g \
  -p 1521:1521 \
  -p 5500:5500 \
  -e ORACLE_SID=ORCLCDB \
  -e ORACLE_PDB=ORCLPDB1 \
  -e ORACLE_PWD=YourStrongPassword@123 \
  -e ORACLE_CHARACTERSET=AL32UTF8 \
  -v /data/oracle19c/oradata:/opt/oracle/oradata \
  -v /data/oracle19c/backup:/opt/oracle/backup \
  --health-cmd="lsnrctl status" \
  --health-interval=2m \
  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/heartu41/oracle19c

解释说明:
docker run -d \  # 后台运行容器
  --name oracle19c-prod \  # 为容器指定名称为 oracle19c-prod
  --restart=unless-stopped \  # 设置容器自动重启策略,除非手动停止,否则容器会在系统重启后自动启动
  --cpus=2 \  # 限制容器使用 2 个 CPU 核心
  --memory=4g \  # 限制容器使用 4GB 内存
  -p 1521:1521 \  # 将宿主机的 1521 端口映射到容器的 1521 端口(Oracle 数据库默认端口)
  -p 5500:5500 \  # 将宿主机的 5500 端口映射到容器的 5500 端口(用于 Oracle 数据库的 Web 控制台)
  -e ORACLE_SID=ORCLCDB \  # 设置 Oracle 实例名为 ORCLCDB
  -e ORACLE_PDB=ORCLPDB1 \  # 设置 Oracle PDB(Pluggable Database)为 ORCLPDB1
  -e ORACLE_PWD=YourStrongPassword@123 \  # 设置 Oracle 数据库管理员密码
  -e ORACLE_CHARACTERSET=AL32UTF8 \  # 设置 Oracle 数据库字符集为 AL32UTF8
  -v /data/oracle19c/oradata:/opt/oracle/oradata \  # 将宿主机的 /data/oracle19c/oradata 目录挂载到容器的 /opt/oracle/oradata 目录(存储数据库数据)
  -v /data/oracle19c/backup:/opt/oracle/backup \  # 将宿主机的 /data/oracle19c/backup 目录挂载到容器的 /opt/oracle/backup 目录(存储数据库备份)
  --health-cmd="lsnrctl status" \  # 设置健康检查命令,检查 Oracle Listener 的状态
  --health-interval=2m \  # 设置健康检查的时间间隔为 2 分钟
  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/heartu41/oracle19c  # 使用 Oracle 19c 镜像(指定镜像地址)

第三步、关闭防火墙 

# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
 
# 关闭selinux
# 临时
setenforce 0  
# 永久
sed -i 's/enforcing/disabled/' /etc/selinux/config  

第四步、使用sqldeveloper 进行连接

 第五步、创建表空间

#创建表空间
CREATE TABLESPACE yongyou_U8
DATAFILE '/opt/oracle/oradata/ORCLCDB/yongyou_U8.dbf' SIZE 100M
AUTOEXTEND ON NEXT 50M MAXSIZE 1G
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;

解释说明:
1、CREATE TABLESPACE yongyou_U8

创建一个名为 yongyou_U8 的新表空间

表空间是 Oracle 中用于存储数据库对象的逻辑存储单元

2、DATAFILE '/opt/oracle/oradata/ORCLCDB/yongyou_U8.dbf' SIZE 100M

指定表空间的数据文件位置和大小

数据文件路径:/opt/oracle/oradata/ORCLCDB/yongyou_U8.dbf

初始大小:100MB(这是 Oracle 容器的标准数据文件路径)

3、AUTOEXTEND ON NEXT 50M MAXSIZE 1G

设置数据文件自动扩展属性

AUTOEXTEND ON:启用自动扩展功能

NEXT 50M:当需要更多空间时,每次自动扩展50MB

MAXSIZE 1G:数据文件最大可扩展到1GB

4、EXTENT MANAGEMENT LOCAL

指定区(extent)管理方式为本地管理

本地管理比字典管理更高效,是现代 Oracle 数据库的推荐方式

区是Oracle分配空间的基本单位

5、SEGMENT SPACE MANAGEMENT AUTO

指定段空间管理方式为自动管理

自动管理使用位图而不是空闲列表来跟踪块的使用情况

这提高了空间管理效率,减少了DBA的手动干预


网站公告

今日签到

点亮在社区的每一天
去签到