最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
如何在Docker中安装Oracle19c数据库?
时间:2026-08-29 09:06:49 编辑:袖梨 来源:一聚教程网
必须选对CPU架构镜像、配足内存(≥4GB)、挂载可写路径至/opt/oracle/oradata,且需等待初始化完成(日志出现“Database ready to use”)才能连接;ARM64与x86_64镜像不兼容,Docker Desktop需调高内存限制,挂载路径权限须为777。
不能直接用最新镜像一键跑起来,必须选对镜像、配够资源、挂对路径,否则容器会卡在初始化阶段不动,或者启动后连不上。
拉取镜像前先确认 CPU 架构
ARM64(如 M1/M2/M3/M4 Mac)和 x86_64(Intel/AMD 服务器或虚拟机)镜像不兼容。运行 uname -m 查看架构:
- 输出
aarch64或arm64→ 必须用 ARM64 镜像,例如:docker.cnb.cool/kangaroohy/open-source/images/oracle:19.19.0-ee-arm64 - 输出
x86_64→ 可用阿里云的通用镜像:registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c - 拉取失败或启动报
exec format error,基本就是架构 mismatch,别硬等日志,立刻换镜像
容器启动必须满足最低内存要求
Oracle 19c 容器初始化时会检查 cgroup 内存限制。Docker Desktop 默认只给 2GB,docker run 启动后日志里反复出现:
cat: /sys/fs/cgroup/memory/memory.limit_in_bytes: No such file or directory
或卡在 Initializing Oracle 不动,说明内存不足。解决方式:
- Mac 用户:打开 Docker Desktop → Preferences → Resources → Memory → 调至 ≥ 4096 MiB(推荐 6144)
- Linux 服务器:确保宿主机空闲内存 ≥ 4GB,且未被其他容器抢占
- 不要依赖
--memory=4g参数,第三方镜像通常不响应该参数,必须调高 Docker daemon 总限制
数据目录挂载必须可写且路径匹配
镜像默认把数据存在 /opt/oracle/oradata,但若挂载宿主机目录权限不对,初始化直接失败,日志停在 Creating and starting Oracle instance。
正确做法:
- 先创建目录并赋全权限:
mkdir -p /mydata/oracle/oradata && chmod 777 /mydata/oracle/oradata - 挂载时路径必须完整对应:
-v /mydata/oracle/oradata:/opt/oracle/oradata(不是/oracle-data或/oradata) - Mac 上避免挂载到 iCloud 同步目录或用户根目录下(如
~/oracle-data),可能触发权限拦截 - 验证是否生效:进容器执行
ls -ld /opt/oracle/oradata,应显示drwxrwxrwx
连接数据库前要等初始化完成
容器 docker run 返回 container ID 只代表进程启动了,不代表数据库就绪。常见误判:
-
docker ps显示 Up 状态 ≠ 数据库能连 -
docker logs oracle里看到ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN之后,还要继续等 15–25 分钟 - 真正完成的标志是日志末尾出现类似:
Database ready to use. Enjoy! ;)或Completed database initialization - 此时再执行
sqlplus sys/才大概率成功ORACLE_PWD@localhost:1521/ORCLCDB as sysdba
最常被忽略的一点:Oracle 19c 镜像初始化是单线程阻塞式操作,期间 CPU 占用低、日志几乎静默,容易误以为卡死而反复重启容器——其实它就在那儿默默建库,别动,等满 30 分钟再查日志。
相关文章
- 掌握Excel表格数据处理基本操作提升工作效率的秘诀 08-29
- 小米路由r3g和3g是一样的吗(小米路由r3g和3g有什么不同) 08-29
- 如何轻松将PPT转换为竖版布局提升演示效果 08-29
- 探索如何让两个Excel表格之间实现高效数据同步 08-29
- 轻松掌握将PPT转换为竖版的实用实用技巧 08-29
- 异环小吱技能是什么 异环 小吱技能介绍 08-29