Docker中配置Oracle12c

前言

最近实习导师要求部署公司项目,其中需要使用Oracle。在经历了window的部署之后他竟然神奇的卡了3小时进度条!无奈之下只能取消,结果可想而知,我还需要卸载我的window版本的Oracle!!

接下来由我为大家带来使用Docker安装Oracle。如果不熟悉Docker的就看看如何使用Docker哦!将来有机会我也会写一篇Docker的简单使用!

1、下载镜像

第一步是下载我们的镜像,也就是Oracle的镜像,我们需要从远程仓库中pull到本地Docker中

docker pull truevoly/oracle-12c

 在经历过漫长的下载之后,使用Docker images查看镜像是否下载 成功

在这里可以看到,我们的Oracle已经下载成功了

2、使用Oracle

在确认镜像已经下载成功之后,我们已经可以使用Oracle了

docker run -d -p 1521:1521 --name oracle truevoly/oracle-12c

 简单介绍一下:

  • -d:表示后台启动
  • -p:端口映射 把oracle的1521端口映射到本机的1521端口
  • --name 其别名

启动成功后将会返回一段id,这段id就是Oracle的容器id,我们即可对此id做许多事情

然后进行docker ps 可以查看当前正在运行的容器

可以看到,Oracle以及运行成功了! 

3、更改Oracle配置

当看到容器id时,容器已经可以启动成功了,现在我们通过容器id进入容器内部,更改Oracle配置

docker exec -it 5727bd997b59 /bin/bash

因为我这边的容器Id是5727bd997b59 所以大家需要更改为自己所docker ps出来的容器id,进入之后即可发现我们的定位已经更改了,现在已经在容器内部了

接下来需要更改Oracle的一些配置,使我们可以使用SqlPlus。

vi /etc/profile

使用vi 进入profile后使用 vi命令来更改配置文件

简单使用vi

  1. 键盘上按下  i 进入编辑模式-插入操作
  2. 键盘上按下Esc退出编辑模式
  3. 键盘上输入进入命令行模式
  4. 命令行模式键入wq进行保存退出操作

进入到profile后需要在文件最底下添加一下3行配置

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH

保存后即可。

4、进入SqlPlus

使用su 转入oracle账号,然后进入sqlplus,成功后显示sql

root@5727bd997b59:/# su oracle
oracle@5727bd997b59:/$ $ORACLE_HOME/bin/sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Sep 21 09:23:57 2022

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production
SQL>

然后修改直接system和sys的密码

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

Profile altered.

SQL> alter user SYSTEM account unlock;

User altered.

SQL> alter user system identified by rootadmin;

User altered.

SQL> alter user sys identified by rootadmin;

User altered.

然后进入navicat进行查看 填入对应的信息用户名密码为刚刚自己更改的那个

服务名需要到sql下使用select命令即可查看直接Oracle的服务名

SQL> select name from v$database;

NAME
---------
XE

  填写完毕测试连接,连接成功!

 总结

使用Docker能极大快速的部署我们的所需要的运行环境(因为踩过Oracle-window的坑),本篇文章中给大家带来嘞在Linux环境下部署Docker的Oracle,希望我所写的内容能给大家带来帮助,也希望大佬们能多多指正,谢谢!

 

### Docker 离线环境下安装配置 Oracle 12c #### 准备工作 为了在离线环境中成功部署 Oracle 12c 数据库容器,需提前下载所需资源并传输至目标机器。具体操作如下: - **获取镜像文件**:从有网络访问权限的计算机上拉取 `store/oracle/database-enterprise` 镜像,并保存为 tar 文件以便后续导入到无网环境下的主机中[^2]。 ```bash docker pull store/oracle/database-enterprise:12.2.0.1 docker save -o oracle_12c.tar store/oracle/database-enterprise:12.2.0.1 ``` - **转移镜像包**:通过移动硬盘或其他方式将上述导出的 `.tar` 文件拷贝到待运行数据库实例的目标服务器里去。 - **加载本地镜像**:一旦到达目的地之后,在命令行终端执行下面这条语句来载入之前准备好的压缩包内的内容。 ```bash docker load < oracle_12c.tar ``` #### 创建数据卷与设置必要的目录结构 考虑到持久化存储需求以及可能存在的权限问题,建议预先创建好用于挂载的数据卷路径,并赋予适当读写许可给相应用户组[^3]。 ```bash mkdir -p /opt/Projects/oracle12c/DBData chown -R oracle:oinstall /opt/Projects/oracle12c/DBData chmod -R 775 /opt/Projects/oracle12c/DBData ``` #### 启动容器服务 最后一步就是利用已经就绪的各项条件启动一个新的容器实例了。这里需要注意端口映射关系的选择要避开冲突的风险;另外还可以考虑增加一些自定义变量来自定义初始化过程中的某些行为特性。 ```bash docker run -d \ --name=oracleDB \ -v /opt/Projects/oracle12c/DBData:/ORCL \ -p 41521:1521 \ store/oracle/database-enterprise:12.2.0.1 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值