当前位置: 首页 > news >正文

Docker中安装Oracle-12c

前言

MySQL和Oracle是开发中常用到的两个关系型数据库管理系统,接上一期内容,这一期在Docker中完成oracle-12c的安装和配置。

安装oracle-12c

1、拉取oracle-12c镜像

启动Docker Desktop后在cmd窗口中执行docker search oracle命令,搜索Oracle相关的镜像,可以看到搜索结果中的truevoly/oracle-12c

不指定版本则默认下载oracle-12c最新版本的镜像,Oracle的镜像文件较大,拉取镜像会久一些。

# 拉取镜像(默认下载oracle-12c最新版本的镜像)
docker pull truevoly/oracle-12c


2、创建并启动容器

cmd中执行以下命令,在docker中创建并启动一个oracle-12c容器,对物理机暴露2122、9090和1521三个端口分别映射到容器内的22、8080和1521端口,并且将容器内的oracle目录挂载到物理机的D盘中

# 创建oracle-12c容器并启动
docker run -d -p 2122:22 -p 9090:8080 -p 1521:1521 -v D:\lingSoftware\Docker\WorkSpace\Oracle:/u01/app/oracle/ --name oracle-12c truevoly/oracle-12c

查看容器启动日志(看到Import finished Database ready to use. Enjoy! 即容器创建并启动完成)

# 查看oracle-12c启动日志
docker logs -f oracle-12c



若日志中出现以下报错,是因为对外暴露的端口不可用访问权限已被禁止,只要更改创建容器时对外暴露的端口即可

docker: Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:1521 -> 0.0.0.0:0: listen tcp 0.0.0.0:1521: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

可在cmd中执行以下命令查看哪些端口被禁用TCP协议

# cmd命令查看哪些端口被禁用TCP协议
netsh interface ipv4 show excludedportrange protocol=tcp


3、修改oracle账号密码设置

truevoly/oracle-12c镜像创建的容器默认有syssystem两个用户,密码都是oracle,默认的一个SID/服务名是xe,Oracle的用户密码默认有效期是180天,180天后用户会自动锁住,下面进入oracle-12c容器内将密码的有效期设置为永久!

# 进入oracle-12c容器内
docker exec -it oracle-12c /bin/bash
# 切换成oracle用户
su oracle
# 进入sqlplus
$ORACLE_HOME/bin/sqlplus / as sysdba
# 设置密码有效期为无限制
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
# 解锁system用户
SQL> alter user SYSTEM account unlock;

4、物理机连接oracle-12c

使用PL/SQL或Navicat等工具测试连接oracle-12c

拓展

Oracle创建表空间与用户

以下创建一个ling_mf3数据表空间

-- 创建ling_mf3数据表空间
create tablespace ling_mf3 datafile '/u01/app/oracle/data/ling_mf3.dbf' size 50M;

创建表空间成功,同时也会在挂载的目录下生成相应数据文件

以下创建一个用户ling并授权,且设置ling_mf3为它的默认表空间

-- 创建ling用户密码为meet0and1#202302并设置ling_mf3为它的默认表空间
create user ling identified by "meet0and1#202302" default tablespace ling_mf3;
-- 给用户ling授权 dba:管理员的权限
grant connect,resource,dba to ling;

重启Oracle服务

Docker Desktop中可以一键重启,但实际开发中一般是在Linux环境中,我这里演示用命令重启Oracle服务

-- 查看监听状态
lsnrctl status
-- 停监听
lsnrctl stop
sqlplus / as sysdba
-- 停止oracle
SQL>shutdown immediate;
-- 启服务
SQL>startup;
SQL>exit
-- 启监听
lsnrctl start

更多常用…

-- 删除表空间
drop tablespace ling_mf3;-- 查询所有的表空间
select tablespace_name from dba_tablespaces;-- 查看当前的用户和表空间
select username,default_tablespace from user_users;-- 查看当前用户的角色
select * from user_role_privs;
-- 查询实例名/SID/服务名
select instance_name from v$instance;
-- 查看Oracle版本
select * from v$version;-- 查看数据库允许的最大连接数
select value from v$parameter where name = 'processes';-- 查看当前连接数
select count(*) from v$process;-- 查看数据库当前会话的连接数
select count(*) from v$session;-- 查看数据库当前的并发连接数
select count(*) from v$session where status = 'ACTIVE';

后记

若有问题可在公众号遇见0和1后台加群艾特我咨询!


相关文章:

Docker中安装Oracle-12c

前言 MySQL和Oracle是开发中常用到的两个关系型数据库管理系统,接上一期内容,这一期在Docker中完成oracle-12c的安装和配置。 安装oracle-12c 1、拉取oracle-12c镜像 启动Docker Desktop后在cmd窗口中执行docker search oracle命令,搜索O…...

教你如何用Python分析出选注双色球号码

前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ 数据集介绍 找从19年到现在的开奖历史数据,我们首先要把这个历史数据拿到, 拿到我们再进行做分析,分析每个号码出现的频率是多少, 哪个多&#x…...

elasticsearch映射及字段类型

查询映射关系类型上对字段的类型进行映射,我们前面知道可以通过get方法请求_mapping查询指定类型的映射关系:此语句可以查询get-together索引下的group类型的映射关系更新映射关系使用put方法可以更新类型的映射这里指定了new-events类型的字段映射关系&…...

1493围圈报数(队列)

题目描述 有n个人依次围成一圈,从第1个人开始报数,数到第m个人出列,然后从出列的下一个人开始报数,数到第m个人又出列,…,如此反复到所有的人全部出列为止。…...

【ArcGIS Pro二次开发】(2):创建一个Add-in项目

Add-In即模块加载项,是一种能够快速扩展桌面应用程序功能的全新扩展方式。 一、创建新项目 1、打开VS2002,选择创建新项目。 2、在搜索框中输入“arcgis pro”,在搜索结果中选择【ArcGIS Pro 模块加载项】创建项目,注意选择语言应…...

浏览器缓存是如何提升网站访问速度的

提升速度,降低负载 浏览器访问一个页面时,会请求加载HTML、CSS和JS等静态资源,并把这些内容渲染到屏幕上。 对浏览器来说,如果页面没有更新,每次都去请求服务器是没有必要的。所以,把下载的资源缓存起来&…...

Linux中几个在终端中有趣的命令

uhh…最近我不知道该更新些什么,所以就更新Linux几个很有趣的命令 文章目录前言1.命令:sl安装 sl输出2. 命令:telnet命令:fortune安装fortune4.命令:rev(反转)安装rev5. 命令:factor…...

快来来试试SpringBoot3 中的新玩意~

你还在用OpenFeign嘛?快来试试 SpringBoot3 中的这个新玩意!声明式HTTP调用 1、由来 Spring Boot3 去年底就已经正式发布,我也尝了一把鲜,最近有空会和小伙伴们慢慢聊聊 Spring Boot3 都给我们带来了哪些新东西。 今天我们就先…...

【寻人启事】达坦科技持续招人ing

​​​​​​​ ❤️一起来探索前沿科技,做有意思的事情~ 我们是谁 达坦科技(DatenLord)专注于打造新一代开源跨云存储平台。通过软硬件深度融合的方式打通云云壁垒,实现无限制跨云存储、跨云联通,建立海量异地、异构…...

【C/C++基础练习题】简单函数练习题

🍉内容专栏:【C/C要打好基础啊】 🍉本文内容:简单函数使用练习题(复习之前写过的实验报告) 🍉本文作者:Melon西西 🍉发布时间 :2023.2.11 目录 1.给定某个年…...

【代码随想录训练营】【Day11】第五章|栈与队列|20. 有效的括号|1047. 删除字符串中的所有相邻重复项|150. 逆波兰表达式求值

20. 有效的括号 题目详细:LeetCode.20 由题可知,有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。 那么,我们可以利用栈后进先出的特点&#x…...

基于云原生分布式存储ceph实现k8s数据持久化

文章目录1、初始化集群1.1 集群机器配置1.2 配置主机名1.3 配置hosts文件1.4、配置互信1.5、关闭防火墙1.6、关闭selinux1.7、配置Ceph安装源1.8、配置时间同步1.9、安装基础软件包2、安装ceph集群2.1 安装ceph-deploy2.2 创建monitor节点2.3 安装ceph-monitor2.4 部署osd服务2…...

SpringMVC获取请求参数

SpringMVC获取请求参数 通过ServletAPI获取 将HttpServletRequest作为控制器方法的形参,此时HttpServletRequest类型的参数表示封装了当前请求的报文对象。 RequestMapping("/testServletAPI") // request表示当前请求 public String testServletAPI(H…...

详解浏览器从输入URL到页面展示的过程

用户发出 URL 请求到页面开始解析的这个过程,就叫做导航。 1. 用户输入 当用户在地址栏中输入一个查询关键字时,地址栏会判断输入的关键字是搜索内容,还是请求的 URL。 当用户输入关键字并键入回车之后,这意味着当前页面即将要…...

【吉先生的Java全栈之路】

吉士先生Java全栈学习路线🧡第一阶段Java基础: 在第一阶段:我们要认真听讲,因为基础很重要!基础很重要!基础很重要!!! 重要的事情说三遍。在这里我们先学JavaSE路线;学完之后我们要去学第一个可视化组件编程《GUI》;然后写个《贪吃蛇》游戏耍…...

第二章 Opencv图像处理基本操作

目录1.读取图像1-1.imread()方法2.显示图像2-1.imshow()方法2-2.waitKey()方法2-3.destroyAllWindows()方法2-4.小总结3.保存图像3-1.imwrite()方法4.查看图像属性4-1.常见的三个图像属性1.读取图像 要对一幅图像进行处理,第一件事就是要读取这幅图像。 1-1.imread(…...

字节一面:在浏览器地址栏输入一个 URL 后回车,背后发生了什么?

近段时间,有小伙伴面试字节,说遇到一个面试题: 在浏览器地址栏输入一个 URL 后回车,背后发生了什么? 这里尼恩给大家做一下系统化、体系化的梳理,使得大家可以充分展示一下大家雄厚的 “技术肌肉”&#xf…...

推荐3dMax三维设计十大插件

3dMax是一款功能非常强大的三维设计软件,但无论它的功能多么强大,也不可能包含所有三维方面的功能,这时候,第三方插件可以很好的弥补和增强3dMax的基本功能,下面就给大家介绍十款非常不错的3dMax插件。 森林包&#xf…...

Arduino IDE 2.0.6中 ESP32开发环境搭建笔记

Arduino IDE 2.0.6中 ESP32开发环境搭建 Arduino IDE2.0 已上线一段时间,以后ESP32的学习转至新的IDE中 ,需对开发环境进行。 Arduino IDE2.0与1.0有很大差异。原来环境搭建方法已完全不同。下文主要记录环…...

商品秒杀接口压测及优化

目录一、生成测试用户二、jmeter压测三、秒杀接口优化1、优化第一步:解决超卖2、优化第二步:Redis重复抢购3、优化第三步:Redis预减库存①商品初始化②预减库存一、生成测试用户 将UserUtils工具类导入到zmall-user模块中,运行生…...

NFC 项目前期准备工作

同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。 了解项目信息,FAE联系方式,驱动源码等驱动合入内核配置DTS驱动设备节点验证Push nf…...

(C语言)数据的存储

问:1. 数据类型有哪五大类?2. 数据类型的作用是什么与什么?3. 整型又可以具体分为哪五个?为什么字符char也归属于整型?4. 浮点型又可以具体分为哪两类?5. 构造类型就是什么?具体分为哪四类&…...

C语言深度剖析之文件操作

💗 💗 博客:小怡同学 💗 💗 个人简介:编程小萌新 💗 💗 如果博客对大家有用的话,请点赞关注加关注 🌞 什么是文件 磁盘上的文件是文件。 但是在程序设计中,我们一般谈的文…...

RNN神经网络初探

目录1. 神经网络与未来智能2. 回顾数据维度和神经网络1. 神经网络与未来智能 2. 回顾数据维度和神经网络 循环神经网络,主要用来处理时序的数据,它对每个词的顺序是有要求的。 循环神经网络如何保存记忆功能? 当前样本只有 3 个特征&#x…...

【flinkx】【hdfs】【ing】Cannot obtain block length for LocatedBlock

一. 任务描述 使用flinkx去跑HDFS到HIVE的任务时,出现如下报错: CannotObtainBlockLengthException com.dtstack.flinkx.throwable.FlinkxRuntimeException: cant get file size from hdfs, file hdfs://xxx/.data/540240453caeb6fe4b3f118410a05315_2…...

【Day6】合并两个排序链表与合并k个已排序的链表,java代码实现

前言: 大家好,我是良辰丫🚀🚀🚀,今天与大家一起做两道牛客网的链表题,好久写关于链表题的博客了,这两道题可以帮大家巩固一下链表知识,我把两道题的链接放到下面&#xf…...

Swagger PHP

PHP使用Swagger生成好看的API文档不是不可能,而是非常简单。首先本人使用Laravel框架,所以在Laravel上安装swagger-php。一、安装swagger - phpcomposer require zircote/swagger-phpswagger-php提供了命令行工具,所以可以全局安装&#xff0…...

谷粒商城-品牌管理-JSR303数据校验

后端在处理前端传过来的数据时,尽管前端表单已经加了校验逻辑,但是作为严谨考虑,在后端对接口传输的数据做校验也必不可少。 开启校验: 实体类上增加校验注解,接口参数前增加Valid 开启校验 package com.xxh.product.…...

Java零基础教程——数组

目录数组静态初始化数组数组的访问数组的动态初始化元素默认值规则:数组的遍历数组遍历-求和冒泡排序数组的逆序交换数组 数组就是用来存储一批同种类型数据的容器。 20, 10, 80, 60, 90 int[] arr {20, 10, 80, 60, 90}; //位置 0 1 2 3 4数组的…...

AirServer在哪下载?如何免费使用教程

苹果手机投屏到电脑mac是怎么弄?你知道多少?相信大家对苹果手机投屏到电脑mac能在电脑上操作不是很了解,下面就让coco玛奇朵带大家一起了解一下教程。AIrServer是一款ios投屏到mac的专用软件,可将iOS上的音频,视频&…...

建设人员变更是哪个网站/网站维护费一年多少钱

大家好!欢迎收听,闽南之声佛法与人生,一听就懂的佛法。坚持“定课”贤二、138什么是“定课”1、法师,关于佛教我有很多方面不了解,还请您解惑。贤二师父请讲。2、佛门中的早晚课是什么意思?贤二师父早晚课是…...

web免费开源网站源码/丹东网站seo

蓝色关注,回复“9”获取个人如何快速成长、架构,能力模型,技术管理等资料。见字如面,我是军哥。如今疫情缓解,春意盎然,又到了金三银四的跳槽季节,好多读者让我更新面试相关的文章,今…...

河北住房和城乡建设厅网站驱动/网站推广的案例

文章目录脚本不同执行方式的影响管道重定向变量变量赋值变量的引用变量的作用范围系统环境变量环境变量配置文件脚本不同执行方式的影响 标准shell脚本包含哪些元素 “#” 号开头的注释 chmod urx filename 可执行权限 执行命令 bash ./filename.sh./filename.sh 需要有可执…...

云浮罗定哪有做网站的/企业查询软件

(1)配置ImageView,为其添加src属性,指定显示内容 android:src”drawable/ic_launcher” (2)添加scaleType,设置不同的拉伸方式 a)android:scaleType”center” 以原图的几何中心点和ImagVie…...

cdr做网站流程/网推拉新app推广平台

在正常负载情况下,为每个任务分配一个线程,能够提升串行执行条件下的性能。只要请求的到达率不超出服务器的请求处理能力,那么这种方法可以同时带来更快的响应性和更高的吞吐率。如果请求的到达速率非常高,且请求的处理过程是轻量…...

做网站go和python/网站如何推广出去

我看了下没发现什么问题,现把代码发出来求高手解答#regionprivatevoidExportToExcel()privatevoidExportToExcel(){Response.Clear();Response.Buffertrue;Response.Charset"utf-8"...我看了下没发现什么问题,现把代码发出来求高手解答#region…...