很多刚接触Oracle的朋友,一上来就被传统安装劝退:配置prerequisites、处理依赖、调内核参数、等半小时初始化,还容易因为系统版本不兼容翻车。
今天给大家一个零门槛、不踩坑、5分钟可用的方案:用Docker容器装Oracle。不用改系统、不用处理复杂依赖,一条命令拉镜像、一条命令起服务,数据还能持久化,用完即删也不污染环境,特别适合初学者快速上手练习。
一、安装容器
1. 卸载旧版本(如果有)
yum remove -y docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine2. 安装依赖
yum install -y yum-utils device-mapper-persistent-data lvm23. 添加Docker源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo4. 安装Docker
yum install -y docker-ce docker-ce-cli containerd.io5. 启动Docker并设置开机自启
systemctl start docker
systemctl enable docker6. 验证安装
docker -v
显示版本号就说明正常了。
二、 安装Oracle
考虑到Oracle 19c是目前用的比较广泛且稳定的版本,我将以Oracle 19c为例,手把手教你如何部署。
1. 拉取Oracle镜像
首先,你需要从镜像仓库下载Oracle 19c的镜像。由于官方镜像较大且下载受限,这里推荐使用阿里云的公共镜像仓库,速度更快。
在终端执行以下命令:
docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
注意:镜像较大,下载时间取决于你的网络速度,请耐心等待。
2. 创建并授权本地目录
为了防止容器删除后数据丢失,我们需要将容器内的数据库文件映射到宿主机(你的电脑或服务器)上。
执行以下命令创建目录并赋予权限(权限不足会导致启动失败):
# 创建目录(路径可根据需要修改)
mkdir -p /docker/oracle19c/oradata
# 赋予读写执行权限
chmod 777 /docker/oracle19c/oradata
3. 运行容器(关键步骤)
这是最重要的一步。为了避免常见的“内存不足”或“文件句柄限制”错误,我们需要在启动时增加一些资源限制参数。
请复制并执行以下完整命令:
docker run -d \
--name oracle19c \
--restart=unless-stopped \
-p 1521:1521 \
-p 5500:5500 \
-e ORACLE_SID=ORCL \
-e ORACLE_PDB=ORCLPDB \
-e ORACLE_PWD=oracle \
-e ORACLE_EDITION=standard \
-e ORACLE_CHARACTERSET=AL32UTF8 \
--ulimit nofile=262144:262144 \
--ulimit nproc=16384:16384 \
--shm-size=1g \
-v /docker/oracle19c/oradata:/opt/oracle/oradata \
registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
主要参数说明:
4. 查看安装进度
容器启动后,Oracle数据库需要进行初始化配置(创建数据库实例等),这通常需要几分钟时间。
可以实时查看日志来监控进度:
docker logs -f oracle19c
当你看到日志中出现DATABASE IS READY TO USE! 或100% complete字样时,说明安装成功。

5. 验证是否可用
登录进入容器,登录数据库,执行一次查询,例如:
[root@c7 ~]# docker exec -it oracle19c /bin/bash
[oracle@feb7a5e48f90 ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Mar 26 13:14:51 2026
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> select INSTANCE_NAME from v$instance;
INSTANCE_NAME
----------------
ORCL
SQL>

6. 创建用户
在SQL*Plus中执行以下命令,查看当前的PDB名称
-- 1. 查看有哪些 PDB
show pdbs;
-- 2. 切换会话到 PDB (将 ORCLPDB 替换为你上面查到的实际名称)
alter session set container = ORCLPDB;
切换成功后,执行创建用户语句
-- 3. 创建用户
create user test_user identified by "Test2026.Jc";用户创建好后通常无法登录,需要赋予权限:
-- 4. 赋予连接和资源权限
grant connect, resource to test_user;
-- 或
grant dba to test_user;
7. 外部连接
可以用客户端连接,例如我用SQL Developer客户端来连接

连接后执行相关SQL

至此就完成了Oracle 19c的部署。
三、 结语
新手在学习数据库的时候推荐先快速安装一个环境,对于Oracle数据库这种安装步骤较为复杂的数据库,建议可以用容器方式部署,因为
对只想学SQL、练数据库的初学者来说,别把时间浪费在安装上,用容器快速搭好环境,直接开始学习才是最高效的。
今天,你学会了么?