你的位置:首页 > 数据库

[数据库]oracle容器化docker解决方案


Docker提供了轻量级的虚拟化,它几乎没有任何额外开销。
提供了一个从开发到上线均一致的环境。
开发效率:一是我们想让开发环境尽量贴近生产环境
二是我们想快速搭建开发环境
 
基于docker研发小组 qq群:108636195
 
 
概要:
 
1、只在数据库初始化与数据库迁移使用,普通迭代还是走提交增量脚本
2、data、log、oracle三合一服务
    data.tar 封装数据文件
    log.tar 封装日志文件
    oracle.tar 封装oracle应用依赖

3、swarm生态圈oracle统一管理
    一个项目一个容器一个oracle
    统一管理监控每个节点oracle容器及服务
 
 
背景:测试环境、预发布演示环境、生产环境、数据库老是不一致引起的种种问题。
目标:测试环境、预发布演示环境、生产环境 一体化。
技术目标:创建oracle源容器,DockerFile拉构建分支,oracle应用、数据文件、归档日志分离
 
落地方案:
一、创建oracle源容器
    应用安装oracle11g、sshd 同时暴露22、1521端口
    oracle应用初始体积其实不大才519M
 
 
 
二、启动一个容器指定22、1521端口,挂载data数据文件目录与归档日志目录

-p 映射端口(宿主机端口:容器内部端口)
-v 挂载目录(同上)
--name 容器别名(用于服务集群)
 
三、启动容器内oracle服务
脚本:
#start_oracle.sh
su - oracle 
sqlplus /nolog 
conn /as sysdba 
startup 
exit 
lsnrctl start 
exit 
docker exec oralce1 sh /root/start_oracle.sh
 
四、转版本流程
1、只在数据库初始化与数据库迁移使用该方案,普通迭代还是走提交增量脚本
2、data、log、oracle三合一服务
    data.tar 封装数据文件
    log.tar 封装日志文件
    oracle.tar 封装oracle应用依赖
 
 

 

--