百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

【Docker】部署Oracle11g

moboyou 2025-03-06 13:07 14 浏览

该来的总是要来的,之前已经讲过SQL Server、MySQL的docker部署,接下来总该到Oracle这个主流的数据库了。

1. 部署镜像

这次部署的oracle数据库是11g。为什么要部署11g而不是12c?主要是因为DockerHub的oracle镜像在下载前还需要填一堆东西略嫌麻烦,所以就选择了其他版本了。

首先先将11g的镜像下载下来

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

下载等待时(整个镜像有差不多3G左右,下载需要一定的时间)先建一个挂载的目录,路径如下所示:

/Users/yuanzhenhui/Documents/docker_data/oracle11g

在镜像下载后即可通过语句启动docker镜像

docker run -d -it \
--name oracle11g \
--restart=always \
-p 1521:1521 \
-v /Users/yuanzhenhui/Documents/docker_data/oracle11g:/home/oracle/app/oracle/data/oracle_11g \
-v /Users/yuanzhenhui/Documents/docker_data/oracle11g/backup:/home/oracle/app/oracle/admin/orcl/dpdump/ \
registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest

因为往后有需要导出dmp文件的需要,因此也在宿主机创建一个backup目录将里面的dpdump目录挂载出来。docker启动完成后还需要连sqlplus进行其他操作,但这个阿里云的镜像里面是没有创建软连接的,因此需要先设置环境变量。

先通过docker exec -it oracle11g bash进入到容器的内部并修改/etc/profile文档,修改前先切换到root用户

username:root
password:helowin

之后通过vim去修改/etc/profile文件并添加下面代码

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

修改完成后通过source /etc/profile来使profile文件生效。之后就创建sqlplus的软连接到/usr/bin目录下

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

之后就可以使用sqlplus登录oracle并对内容进行设置

# 使用sysdba登录oracle
sqlplus / as sysdba
# 创建连接
conn / as sysdba
# 修改system用户的登录密码为abc
alter user system identified by abc;
# 修改sys用户的登录密码为abc
alter user sys identified by abc;
# 设置密码永不过期
alter profile default limit password_life_time unlimited;

之后就可以退出容器使用IDE工具进行访问连接测试。如下图所示:


双击后即可看到所有表信息,如下图所示:

2. 创建表空间与用户

先进入docker容器

docker exec -it oracle11g bash

然后通过sysdba登录sqlplus

sqlplus / as sysdba

然后直接创建表空间

create tablespace YZH datafile '/home/oracle/app/oracle/data/oracle_11g/yzh.dbf' size 3072m autoextend on next 100m maxsize unlimited;

上面语句的意思是,创建一个名为YZH的表空间,表空间的路径为
/home/oracle/app/oracle/data/oracle_11g/yzh.dbf(注意这里的路径是容器内部路径),预设的大小为3G然后采用自动扩展的模式,每次扩展100m。

接着就可以创建用户并指定对应的表空间

create user yzh identified by yuanzhenhui default tablespace YZH;

用户创建后就可以给该用户授权

grant connect,resource,dba to yzh;

然后就可以通过yzh用户登录,登录后就可以查看是否正确创建表空间

SELECT
	TABLESPACE_NAME,
	SUM(BYTES)/ 1024/1024
FROM
	dba_data_files
GROUP BY
	TABLESPACE_NAME;

以为这样就结束了?

接下来你肯定会创建自己的数据库然后想立刻创建表开始使用了是么?那么你就会发现你create database无法创建数据库。系统会提示你

ORA-01501: CREATE DATABASE failed
ORA-01100: database already mounted.

遇到这种情况怎么办呢?

其实需要分清的是Oracle跟MySQL不一样并不需要重新创建数据库的,一个实例中就一个数据库。因此并不需要新建数据库直接建表就可以了。

相关推荐

声学EI要完稿?十步速写法

【推荐会议】国际声学与振动会议(ICAV)会议号:CFP23112A截稿时间:2025年4月20日召开时间/地点:2025年8月15-17日·新加坡论文集上线:会后3个月提交EiComp...

结构力学!EI会议图表规范秘籍

推荐会议:国际结构与材料工程进展大会(ISME2026)会议编号:EI#73521截稿时间:2026年3月10日召开时间/地点:2026年8月15-17日·德国柏林论文集上线:会后4...

傅里叶级数物理意义的直观理解:利用傅里叶级数逼近方波信号

上篇文章将向大家介绍频谱的概念,对傅里叶级数、傅里叶积分、傅里叶变换进行了数学的推导,并解释了它们各自的物理意义。推导过程见我的上一篇文章:频谱分析——频谱概念(傅里叶变换、级数、积分及物理意义)如下...

通过对航空发动机整机振动进行分析,有何控制方法?

前言针对航空发动机整机振动问题的复杂性和多样性,以整机振动的振源分析为出发点,总结国内外关于转子系统故障、气流激振、轴承故障、齿轮故障和结构局部共振等引起的整机振动的研究情况。结合航空发动机整机结构动...

MATLIB中使用PCA

主成分分析PCA(PrincipalComponentsAnalysis),奇异值分解SVD(Singularvaluedecomposition)是两种常用的降维方法降维致力于解决三类问题:降维...

数据处理|软件:让科研更简单2

书接上回,继续介绍免费的数据处理软件。eGPS一款热图绘制专用软件,热图就是用颜色代表数字,让数据呈现更直观,对比更明显。优点:小巧方便,基本功能齐全,包括数据转换、聚类分析、颜色调整等等缺点:常见的...

电力系统常用的通讯协议及其在Speedgoat系统中的实现

在电力系统中,IEC61850协议、DNP3协议、ModbusTCP广泛应用于远程终端设备(RTU)、智能电子设备(IED)交互以及监控和数据采集(SCADA)系统。一、IEC61850协议IE...

电子工程师的常用仿真软件

不知道从事电子行业的工程师,有没有使用模拟仿真工具,仿真软件网上又有很多,初学者,可能只知道Multisim和Proteus。一般Multisim适合在学习模拟电路和电路分析原理课程时使用,便于理解电...

技术论文|异结构混沌系统的组合同步控制及电路实现

欢迎引用[1]李贤丽,马赛,樊争先,王壮,马文峥,于婷婷.异结构混沌系统的组合同步控制及电路实现[J].自动化与仪器仪表,2022,No.276(10):80-84.DOI:10.14016/j.cn...

现场︱某110KV主变事故过程仿真分析

三峡电力职业学院、河南省电力公司洛阳供电公司的研究人员李莉、任幼逢、徐金雄、王磊,在2016年第6期《电气技术》杂志上撰文,针对某110KV变电站主变差动保护跳闸事故,结合事故相关检测数据,通过MAT...

光伏发电系统篇:单级式并网系统实时仿真

在全球积极推动清洁能源转型的大背景下,光伏发电作为重要的可再生能源利用方式,得到了广泛关注和迅猛发展。目前常用的光伏并网及光伏电站主要拓扑结构有单级式和双级式。相较于传统的多级式系统,单级式光伏发电并...

光伏发电系统篇:三电平并网逆变器实时仿真

一、三电平并网逆变器在能源转型加速的当下,分布式能源接入电网需求大增。三电平并网逆变器凭借低谐波、高功率密度等优势,有效提升电能转换效率,于新能源并网发电中担当关键角色。常见的三电平电路拓扑结构包括二...

自制3.5KW大功率逆变器,很简单,看过这个电路原理就懂了

前言拿下8000元奖金的项目,是什么水平?本项目经过联合湖南科技大学光伏逆变以及电力电子研究生团队共同探讨方案。项目成本:1200元,获得奖金:8000元!参加赛事:立创开源硬件平台_星火计划·外包赛...

圈内分享:电容式加速度计接口电路非线性建模与仿真设计

摘要:非线性是Sigma-Delta(ΣΔ)加速度计系统的关键指标之一。基于一个五阶ΣΔ加速度计结构,分析了其主要的非线性模块,在MATLAB中建立了整体结构的行为级模型,并利用根轨迹法进行了稳...

基于Matlab/Simulink建立一种Thevenin/RC电池模块仿真模型

本文以锂电池数学模型为基础,在Matlab/Simulink的仿真系统中,建立了一种Thevenin/RC电池模块仿真模型,通过实际工况试验,测试精度在允许误差范围内,为电池SOC/SOH研究提供了极...