×
技术社区 >  技术博客 >  MySQL、Oracle数据库容器部署完整版指南(可直接复制)

MySQL、Oracle数据库容器部署完整版指南(可直接复制)

还在为测试环境搭数据库折腾半天? 今天给大家带来一套开箱即用的方案,专门面向需要快速搭建 OMS / ODC 等数据源的同学,MySQL 8.0.26 + Oracle 11g 双库配齐,复制命令直接跑。

本方案适用于:快速搭建测试数据库(如OMS/ODC数据源)

镜像仓库地址:https://docker.aityp.com/

一、MySQL容器部署:

1. 镜像拉取与重命名

从镜像仓库拉取镜像

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/ml-pipeline/mysql:8.0.26

2.重命名为标准镜像名

docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/ml-pipeline/mysql:8.0.26 gcr.io/ml-pipeline/mysql:8.0.26

3.容器启动

docker run -d \  --name mysql \  -e MYSQL_ROOT_PASSWORD= \  # 替换为实际密码  -e MYSQL_DATABASE=test_db \  -p 3306:3306 \  -v mysql-data:/var/lib/mysql \  gcr.io/ml-pipeline/mysql:8.0.26

进入容器终端

docker exec -it mysql /bin/bash 

使用MySQL

4.登录MySQL(密码需与启动时一致)

mysql -uroot -p 

5.解决认证错误

若ODC/OMS报错 Public Key Retrieval is not allowed,登录root用户执行以下命令:

ALTER USER 'root'@'%' IDENTIFIED WITH 'mysql_native_password' BY '';FLUSH PRIVILEGES;

替代方案: 在连接字符串中添加参数 allowPublicKeyRetrieval=true(仅限测试环境)。

二、Oracle容器部署:

1. 镜像拉取与重命名

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/akaiot/oracle_11g:latest

2.重命名为标准镜像名

docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/akaiot/oracle_11g:latest  docker.io/akaiot/oracle_11g:latest

3.创建挂载目录

mkdir -p /mydata/oracle11g/appmkdir -p /mydata/oracle11g/dpdumpmkdir -p /mydata/oracle11g/oraInventorychmod 777 /mydata/oracle11g

4.容器启动

docker run  -itd --name oracle11g \--privileged=true \--restart=always \-p 1521:1521 \-v /mydata/oracle11g/app:/opt/oracle/app \-v /mydata/oracle11g/dpdump:/opt/oracle/dpdump  \-v  /mydata/oracle11g/oraInventory:/opt/oracle/oraInventory swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/akaiot/oracle_11g

Tip:如果不想挂载目录的话可以使用下面的启动命令

docker run  -itd --name oracle11g \--privileged=true \--restart=always \-p 1521:1521 \swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/akaiot/oracle_11g

5.使用Oracle

docker exec -it oracle11g /bin/bash

切换root,密码helowin
su root
切换oracle
su - oracle

使用 sqlplus 连接数据库 sqlplus /nolog

使用sysdba连接 SQL> conn /as sysdba;

修改 system 密码

alter user system identified by 123456;

修改密码有效期

alter profile default limit PASSWORD_LIFE_TIME UNLIMITED;

查看当前用户 show user;

退出 sqlplus exit

查看数据库服务状态 lsnrctl status

退出容器 exit

以上就是MySQL 8.0.26 + Oracle 11g 双库 Docker 完整部署流程,如果你在部署中遇到认证报错、容器启动失败等问题,可以在评论区留言。

精选推荐