容器化部署之Oracle安装

容器化部署之Oracle安装

介绍

Oracle Database 19c ,也就是12.2.0.3,最初在livesql.oracle.com上发布,是Oracle Database 12c和18c系列产品的最终版本,因此也是“长期支持”版本(以前称为“终端版本”)。 “长期支持”意味着Oracle Database 19c提供4年的高级支持(截止到2023年1月底)和至少3年的延长支持(截至2026年1月底)。 这个扩展的支持窗口对我们的很多客户至关重要,因为很多客户制定了相关的升级策略。有关最新的Oracle支持计划,请参阅My Oracle Support上的文档ID 742060.1。截止目前,Oracle Database 19c已经可以在Oracle数据库一体机上使用了。

#升级yum
sudo yum update  

#卸载旧版本
sudo yum remove docker  docker-common docker-selinux docker-engine  

#安装依赖  
sudo yum install -y yum-utils device-mapper-persistent-data lvm2  

#设置源  
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo   

# 更新yum缓存
yum makecache fast

# 安装Docker
yum -y install docker-ce

# 启动
systemctl start docker

# 查看是否启动成功
docker info

# 开机自启
systemctl enable docker

# Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the d
systemctl restart docker  #重启一下就行

# 在下载镜像前,需要设置一下国内源,用来提高下载速度
sudo vim /etc/docker/daemon.json

# 配置
{  
    "registry-mirrors": ["https://d7grpode.mirror.aliyuncs.com"]  
}

# 重启
sudo systemctl restart docker

Oracle 19c安装
第一步:下载镜像

# 下载镜像
docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

第二步:创建挂载文件

# 创建文件
mkdir -p /mydata/oracle/oradata
# 授权,不授权会导致后面安装失败
chmod 777 /mydata/oracle/oradata

第三步:安装Oracle
1、安装oracle,并把配置挂载到本地文件

docker run -d  \
-p 1524:1521 -p 5502:5500 \
-e ORACLE_SID=ORCLCDB \
-e ORACLE_PDB=ORCLPDB1 \
# 此处是oracle密码
-e ORACLE_PWD=123456 \
-e ORACLE_EDITION=standard \
-e ORACLE_CHARACTERSET=AL32UTF8 \
-v /mydata/oracle/oradata:/opt/oracle/oradata \
--name orcl19c_03 \
registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
注意:
如果安装失败 ,执行以下命令
docker stop orcl19c_03
docker rm orcl19c_03

第四步:连接Oracle

docker exec -it orcl19c_03 /bin/bash

sqlplus / as sysdba

show pdbs;
还可以通过访问https://localhost:5502/em

username:sys
password:123456
Container Name:ORCLPDB1


是https,不是http
可以通过docker ps 去查看暴露出来的端口
[root@VM-4-17-centos ~]# docker ps
CONTAINER ID   IMAGE                                                   COMMAND                  CREATED       STATUS                 PORTS                                                                                  NAMES
f78325206c84   registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c   "/bin/sh -c 'exec $O…"   4 hours ago   Up 4 hours (healthy)   0.0.0.0:1524->1521/tcp, :::1524->1521/tcp, 0.0.0.0:5502->5500/tcp, :::5502->5500/tcp   orcl19c_03
如果直接创建用户的情况下需要在用户名前面加c##否则就需要切换至PDB模式
alter session set "_ORACLE_SCRIPT"=true;
commit;

CREATE USER demo IDENTIFIED BY 123456;
要实现Oracle数据库容器化部署,可以按照以下步骤操作: 1. 使用Docker镜像启动容器:从官方仓库或自定义镜像开始,如`registry.cn-hangzhou.aliyuncs.com/hellowin/oracle_11g:latest`。设置容器重启策略为始终(`restart: always`),给容器起一个名称(这里是`og`)。 2. 挂载持久化卷:为了保证数据持久性,将容器内的Oracle数据目录(如`/home/oracle/app/oracle/oradata/helowin` 和 `/home/oracle/app/oracle/flash_recovery_area/helowin`)挂载到宿主机上的相应路径(例如,`/data/oracle/oradata` 和 `/data/oracle/oradata/flash_recovery_area`),这样即使容器重启,数据也不会丢失。 ```bash volumes: - "/data/oracle/oradata/test_data:/home/oracle/app/oracle/oradata/helowin" - "/data/oracle/oradata/flash_recovery_area:/home/oracle/app/oracle/flash_recovery_area/helowin" ``` 3. 设置网络端口映射:允许外部访问Oracle监听端口,如1521,通过 `- "15211:1521"` 进行映射。 4. 编写`docker-compose.yml` 文件:定义服务配置,包括使用的镜像、重启策略、数据卷挂载和端口映射。然后,使用`cat > docker-compose.yml << EOF` 创建或编辑这个文件,输入上面提到的内容。 5. 应用新的编排文件:保存应用`docker-compose.yml`,这会基于定义的配置启动或更新Oracle容器。 示例脚本片段: ```bash # 启动容器挂载数据 docker run -d --name og \ --restart always \ -v /data/oracle/oradata/test_data:/home/oracle/app/oracle/oradata/helowin \ -v /data/oracle/oradata/flash_recovery_area:/home/oracle/app/oracle/flash_recovery_area/helowin \ -p 15211:1521 \ registry.cn-hangzhou.aliyuncs.com/hellowin/oracle_11g:latest # 查看应用docker-compose.yml cat > docker-compose.yml << EOF version: '3.1' services: oracle: image: registry.cn-hangzhou.aliyuncs.com/hellowin/oracle_11g:latest restart: always container_name: og volumes: - "/data/oracle/oradata/test_data:/home/oracle/app/oracle/oradata/helowin" - "/data/oracle/oradata/flash_recovery_area:/home/oracle/app/oracle/flash_recovery_area/helowin" ports: - "15211:1521" EOF docker-compose up -d ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值