centos8 kernel source 安装_什么?你在物理机上安装Oracle总失败?那就试试Docker吧

8eb1a08a8c34a982371b2419651e85f5.png

写在前面

有些小伙伴按照我写的《【Oracle】什么?作为DBA,你竟然不会安装Oracle??》一文,在CentOS 8.0服务器上来安装Oracle,总是说:安装不成功!但是我确实也是在CentOS 8.0服务器上安装的啊!没办法,如果在物理机上安装总是失败,那我们就来试试在Docker上来安装Oracle吧,在Docker上安装Oracle也要实现数据的持久化。

注意:Docker安装Oracle需要提前安装好Docker和docker-compose,这些基础环境的安装我就不在这篇文章中写了,后续我会将这些统一写到【云原生】专题。

采用 docker-compose 安装

1.创建相关文件

mkdir /usr/local/dockercd /usr/local/dockermkdir oraclecd oracletouch docker-compose.yml 

2.docker-compose.yml 配置文件的内容如下

version: '3.1'services:  master:    image: registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g    container_name: oracle    privileged: true    ports:      - 1521:1521

3.启动容器,并进入容器

docker-compose up -ddocker exec -it oracle bash

4.配置环境,并创建一个用户,实现外部连接

cd /home/oracle                                           # 进入到 oracle 用户目录source .bash_profile                                      # 加载 oracle 环境变量$PATH                                                     # 查看 oracle 环境变量是否生效sqlplus / as sysdba                                       # 连接 oracle 数据库alter user system identified by oracle;                   # 修改 DBA 账号的密码alter user sys identified by oracle;                      # 修改 DBA 账号的密码alter profile default limit password_life_time unlimited; # 设置密码为永不过期create user test identified by oracle;                    # 创建一个 test 用户,密码 oracleselect * from dba_users t where t.username = 'TEST';      # 查询用户是否创建成功grant connect, resource, dba to test;                     # 给用户授予连接和数据权限

5.相关配置(可省略)

grant select on V_$session to test;grant select on V_$sesstat to test;grant select on V_$statname to test;show parameter deferred_segment_creation;          -- 查看是否启用 true 为启动alter system set deferred_segment_creation=false;  -- 修改为不启用show parameter deferred_segment_creation;          -- 查看是否修改成功 false 未启用

6,使用 plsql 连接

  • 账号:test
  • 密码:oracle
  • 连接:ip:1521/helowin

数据持久化

1.查看helowin实例

可以发现,helowin 的实例安装在:/home/oracle/app/oracle/oradata/helowin 目录下

2.拷贝数据到本地,并修改拥有者

docker cp oracle:/home/oracle/app/oracle/oradata/helowin /usr/local/docker/oracle/helowincd /usr/local/docker/oraclechown -R 500.500 ./helowin  # 500 500 是容器内 oracle 组合用户的 id

3.关闭容器

docker-compose down

4.重新启动容器,并在 docker-composr.yml 添加数据卷配置

version: '3.1'services:  master:    image: registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g    container_name: oracle    privileged: true    ports:      - 1521:1521    volumes:      - ./helowin:/home/oracle/app/oracle/oradata/helowin

5.查看启动日志

docker logs -f oracle

我们发现了一个错误,这是由于 oracle 为了数据安全,添加的版本验证

4bdaedb9df59615008eb3062ec17bbe9.png

6.进入容器内,解决错误

docker exec -it oracle bashcd /home/oracle              # 进入到 oracle 用户目录source .bash_profile         # 加载 oracle 环境变量(每次进入容器都要加载配置文件)# 删除新生成的版本控制文件,将数据卷中的版本控制文件复制为新生成的版本控制文件rm -rf /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctlcp /home/oracle/app/oracle/oradata/helowin/control01.ctl /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctlsqlplus / as sysdba          # 以 dba 身份连接 oracle 数据库shutdown immediate           # 关闭数据库实例(这里会报错,不用管)startup                      # 启动实例

7.问题解决

再次使用 plsql 连接,发现之前创建 test 用户可以连接,数据持久化顺利完成。

PS:Oracle镜像的 root 用户账号密码:root/helowin。

好了,今天就聊到这儿吧!别忘了点个赞,给个点赞和转发,让更多的人看到,一起学习,一起进步!!

后记:

记住:你比别人强的地方,不是你做过多少年的CRUD工作,而是你比别人掌握了更多深入的技能。不要总停留在CRUD的表面工作,理解并掌握底层原理并熟悉源码实现,并形成自己的抽象思维能力,做到灵活运用,才是你突破瓶颈,脱颖而出的重要方向!

转载于:冰河技术

https://mp.weixin.qq.com/s/WaSauCx9N3PcJihuep9g1g

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/332513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Maven的资源坐标

在 Maven 中&#xff0c;坐标是资源包的唯一标识&#xff0c;Maven 通过坐标在仓库中找到唯一的资源。 下面就是 javax.servlet-api-4.0.1.jar 的坐标&#xff1a; <dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</…

starter_您是否尝试过MicroProfile Starter?

starterhttps://start.spring.io的SPRING INITIALIZR已经存在了一段时间&#xff0c;并且是引导新的Spring Boot应用程序的最佳方法。 到目前为止&#xff0c;即使不同的供应商为其实施提供了启动器&#xff0c;也没有类似的方式来引导新的MicroProfile项目。 但是等待已经结束…

html2image乱码问题,HtmlImageGenerator字体乱码问题解决、html2image放linux上乱码问题解决...

使用html2image-0.9.jar生成图片。在本地window系统正常&#xff0c;放到服务器linux系统时候中文乱码问题。英文可以&#xff0c;中文乱码应该就是字体问题了。一、首先需要在linux安装字体&#xff0c;simsun.ttc simsun.ttf simsunb.ttf1、新建目录/user/share/fonts/chine…

java每个阶段的学习时间_每个Java学习者都会犯的10个最常见的1个错误

java每个阶段的学习时间据说&#xff1a;“您的朋友会吞下您的错误&#xff0c;您的敌人会将它们呈现在盘子上”。 我绝对不是你的敌人&#xff0c;但我想向您介绍一些针对每个Java初学者的错误&#xff0c;我将在此博客“标牌”上就此做错。 当然只有其中一些&#xff0c;我是…

高速信号传输约翰逊 pdf_高速数字电路仿真设计与测试技术发展趋势综述 (一)...

近十多年来&#xff0c;数字集成电路和各种接口总线标准的发展令人眼花缭乱&#xff0c;目不暇接。各个总线标准通常由不同团队制订&#xff0c;其纷繁芜杂的测试和测量技术给从业人员带来许多困扰。本文将就当下的一些主要接口总线标准的仿真设计与测试技术发展趋势作一些简明…

Maven的继承

文章目录什么是继承&#xff1f;如何实现继承&#xff1f;什么是继承&#xff1f; 在聚合多个项目时&#xff0c;如果这些被聚合的项目中需要引入相同的Jar&#xff0c;那么可以将这些Jar写入父pom中&#xff0c;各个子项目继承该pom即可。 如何实现继承&#xff1f; 父pom配…

八中计算机是学啥的,北京八中:居然有这么好玩的课

北京八中&#xff1a;居然有这么好玩的课中国青年报北京12月13日电(记者堵力)种种“稀奇古怪”的科技知识纳入了北京八中学生们的正式课程。每周&#xff0c;所有的学生都会面对各种仪器&#xff0c;学习电台、电脑&#xff0c;以及兵器装备的知识等等———12月13日上午9&…

@builder注解_SpringBoot 整合SpringSecurity示例实现前后分离权限注解+JWT登录认证

一.说明SpringSecurity是一个用于Java 企业级应用程序的安全框架,主要包含用户认证和用户授权两个方面.相比较Shiro而言,Security功能更加的强大,它可以很容易地扩展以满足更多安全控制方面的需求,但也相对它的学习成本会更高,两种框架各有利弊.实际开发中还是要根据业务和项目…

web前端面试问答_Web服务面试问答

web前端面试问答在这篇文章中&#xff0c;我们涵盖了您需要熟悉的Web服务概念的几乎所有部分&#xff0c;以回答任何层级问题。 您还将在分类中找到最佳的Web服务面试问题和答案&#xff0c;因此只有在必要时才可以使用特定条款。 今天可以在各种编程平台上开发各种Web应用程序…

Maven项目的pom.xml文件详解

文章目录pom.xml文件解读标签 dependency 的解读pom.xml文件解读 <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0http://maven.…

u盘装系统学计算机好,教你如何使用u盘做系统

电脑对人们来说是了越来越重要了&#xff0c;怎么说呢&#xff0c;不论是在工作中&#xff0c;还是小孩的学习都需要使用电脑&#xff0c;所以说人们是越来越离不开对电脑的使用了。不过&#xff0c;电脑毕竟是电子产品&#xff0c;所以免不了会出现一些故障问题&#xff0c;比…

使用junit进行单元测试_使用JUnit对ADF应用程序进行单元测试

使用junit进行单元测试JUnit是Java语言的单元测试软件包&#xff0c;由于ADF构建在J2EE框架之上&#xff0c;因此可以用于测试Oracle ADF应用程序。 单元测试基本上是根据某些定义的测试标准来验证最小的可测试模块的过程。 在这里&#xff0c;我将说明如何在JDeveloper 12.2.1…

spring mvc是什么_狂神说SpringMVC01:什么是SpringMVC

狂神说SpringMVC系列连载课程&#xff0c;通俗易懂&#xff0c;基于Spring5版本(视频同步)&#xff0c;欢迎各位狂粉转发关注学习。未经作者授权&#xff0c;禁止转载1、回顾MVC1.1、什么是MVCMVC是模型(Model)、视图(View)、控制器(Controller)的简写&#xff0c;是一种软件设…

Maven的settings.xml范本(含资源仓库镜像配置)

文章目录一、settings.xml 范本二、资源仓库镜像一、settings.xml 范本 <?xml version"1.0" encoding"UTF-8"?> <settings xmlns"http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instanc…

java gradle构建_在Gradle中为JPMS构建Java 6-8库

java gradle构建通过提供Java 9 module-info.class了解如何使用Gradle构建支持JPMS&#xff08; Java平台模块系统 &#xff09;的Java 6-8库。 介绍 如果您需要JPMS本身的介绍&#xff0c;请查看此概述 。 这篇文章主要针对Java库维护者。 任何此类维护人员都必须选择要针对…

tcppwebbrower 关闭安全警报_【知识】锅炉与压力容器安全

一、锅炉的主要安全附件1.安全阀安全阀属于泄压装置&#xff0c;能够自动将锅炉工作压力控制在允许范围之内。当炉内超压时&#xff0c;安全阀自动开启&#xff0c;自动泄压&#xff0c;同时发出警报&#xff1b;当炉内压力降到允许范围时&#xff0c;安全阀自动关闭。安全阀使…

macOS下查看Java/JDK的安装目录_查看Java/JDK的版本信息_配置环境变量JAVA_HOME

文章目录查看JDK的安装目录查看系统当前正在使用的 JDK 版本信息配置环境变量 JAVA_HOME查看JDK的安装目录 通常情况下&#xff0c;macOS安装JDK&#xff0c;默认是安装在 /Library/Java/JavaVirtualMachines 目录下。 使用 java_home 命令查看&#xff1a; [~]$ /usr/libex…

java_home命令详解

文章目录命令介绍命令选项说明帮助信息命令介绍 The java_home command returns a path suitable for setting the JAVA_HOME environment variable. It determines this path from the user’s preferred JVM based on configured environment variables. Additional constra…

安全审计报告_企业做税审的五大好处!税审报告和审计报告的区别

税务审计报告是税务审计人员根据税务审计的相关法律、法规&#xff0c;对被审计单位的纳税行为和纳税事项进行评估&#xff0c;并发表意见的书面文件。(咨询&#xff1a;13510890028&#xff0c;肖)一、企业做税审的五大好处:1、可弥补亏损&#xff0c;减少税款支出企业所得税法…

selenium自动化测试_您如何使用Selenium来计算自动化测试的投资回报率?

selenium自动化测试跨浏览器测试是一种测试&#xff0c;需要大量的精力和时间。 通过不同的浏览器&#xff0c;操作系统&#xff0c;设备&#xff0c;屏幕分辨率测试Web应用程序&#xff0c;以评估针对各种受众的Web内容呈现的过程是一项活动。 特别是如果手动处理。 使用Selen…