一、安装oracle19c

1、拉取镜像

docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

2、启动容器

docker run -p 1521:1521 -p 5500:5500 \
--name oracle1 \
--net=host \
-e ORACLE_SID=orcl \
-e ORACLE_PDB=orclpdb1 \
-e ORACLE_PWD=123456 \
-e ORACLE_CHARACTERSET=zhs16gbk \
-e ORACLE_HOME=/opt/oracle/product/19c/dbhome_1 \
-e PATH=/opt/oracle/product/19c/dbhome_1/bin:/opt/oracle/product/19c/dbhome_1/OPatch/:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin \
-v /data/oracle/oradata:/opt/oracle/oradata \
registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

注意:其中/data/oracle/oradata是宿主机上的挂载路径。

如果启动失败,会显示

这个时候就要分析原因。我是因为忘记给挂载的目录赋予写权限,导致一直失败。这个地方要注意。

# 记得给挂载路径赋予权限

chmod -R a+x+w+r  /data/oracle/oradata

如果启动失败,会留下容器进程,而且容器名字不能重复,可以用这个命令批量删除启动失败的进程。

docker rm  $(docker ps -a | grep oracle | awk '{print $1}')

成功输出:

3、这时先不要关闭终端,另外开启一个终端,进入环境修改oracle密码

docker exec oracle1 ./setPassword.sh 123456

修改完密码后可以关闭之前终端了,出现 DATABASE IS READY TO USE之后,后边都是显示的日志,可以关闭终端,关闭终端不会导致它停止运行。

4、进入容器

docker ps | grep oracle
5bb11ac3efc7        registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c   "/bin/sh -c 'exec $O…"   28 minutes ago      Up 28 minutes (healthy)                       oracle1
[root@feature-platform-001 ORCL]# docker exec -it oracle1 /bin/bash
sh-4.2$输入
sqlplus / as sysdba;

如果你使用成功,那么恭喜你。这篇文章到此为止。

然而我这里遇到些问题,startup也会报错,好像和我的某个系统参数设置有关,懒得解决了,打算换个oracle12c。

SQL> select *  from v$log;
select *  from v$log
*
ERROR at line 1:
ORA-01034: ORACLE not available
Process ID: 0
Session ID: 0 Serial number: 0

二、安装oracle12c

下载镜像

docker pull docker.io/truevoly/oracle-12c

建立挂载目录

mkdir /data/oracle/data_temp  && chmod 777 /data/oracle/data_temp

运行镜像

docker run --restart always -d -p 8080:8080 -p 1521:1521 -v /data/oracle/data_temp:/home/oracle/data_temp   -v /etc/localtime:/etc/localtime:ro  --name oracle12c truevoly/oracle-12c

查看日志:

[root@feature-platform-001 ~]# docker logs -f c81d10c1006827f4b5e0acbbba566210f5e5fa4a7d6fd7b791b1cad5d0ae8963Database not initialized. Initializing database.Starting tnslsnrCopying database files1% complete3% complete11% complete18% complete37% completeCreating and starting Oracle instance40% complete45% complete50% complete55% complete56% complete60% complete62% completeCompleting Database Creation66% complete70% complete73% complete85% complete96% complete100% completeLook at the log file "/u01/app/oracle/cfgtoollogs/dbca/xe/xe.log" for further details.Configuring Apex consolePL/SQL procedure successfully completed.Starting import from '/docker-entrypoint-initdb.d':ls: cannot access /docker-entrypoint-initdb.d/*: No such file or directoryImport finishedDatabase ready to use. Enjoy! ;)

进入容器

[root@feature-platform-001 ~]# docker ps | grep oraclec81d10c10068        truevoly/oracle-12c                    "/entrypoint.sh "        7 minutes ago       Up 7 minutes        0.0.0.0:1521->1521/tcp, 0.0.0.0:18080->8080/tcp   oracle12c[root@feature-platform-001 ~]# docker exec -it c81d10c10068 /bin/bashroot@c81d10c10068:/# sqlplus /nologSQL*Plus: Release 12.1.0.2.0 Production on Thu Sep 16 14:58:34 2021Copyright (c) 1982, 2014, Oracle.  All rights reserved.SQL> connect sys as sysdbaEnter password: oracleConnected.SQL>SQL> select status from v$instance;STATUS------------OPENSQL> alter user system identified by 123456;          User altered.

创建用户

create user 账户 identified by 密码;GRANT CONNECT, RESOURCE, DBA TO wcz;

查询数据库名称

SQL> select value from v$parameter where name='service_names';VALUE--------------------------------------------------------------------------------xe

连接信息:

账号:wcz

密码:123456

端口:1521

服务名称:xe

常用操作:

--首先查询一下用户的profile的类型select username ,profile from dba_users;--查看制定概要文件(默认为DEFAULT)的密码有效期:select  * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';--然后将密码的有效期有180天设置为“无限制”;ALTER PROFILE  DEFAULT  LIMIT PASSWORD_LIFE_TIME UNLIMITED;-- 修改密码alter user hysjy identified by 123456;-- 查询所有用户SELECT * FROM ALL_USERS;-- 创建账户create user hysjy identified by 123456;GRANT CONNECT, RESOURCE, DBA TO hysjy;--  给用户授予权限grant create session to hysjy;grant connect,resource to hysjy;-- 解除锁定alter user hysjy account unlock;commit;

linux下通过docker部署安装oracle完整操作(oracle19c和oracle12c)相关推荐

  1. Linux下的docker容器安装教程

    Linux下的docker容器安装教程 一.初始环境配置 1.yum仓库配置 2.检查yum仓库 3.关闭防火墙和selinux 二.开启内核的流量转发 三.安装docker 1.配置docker相关 ...

  2. 《Linux下使用Docker部署Web项目》

    ​说在前头:本人为大二在读学生,书写文章的目的是为了对自己掌握的知识和技术进行一定的记录,同时乐于与大家一起分享,因本人资历尚浅,能力有限,文章难免存在一些错漏之处,还请阅读此文章的大牛们见谅与斧正. ...

  3. Linux下使用docker安装部署Sonar Qube

    文章目录 Linux下使用docker安装部署Sonar Qube 一.环境准备 二.部署步骤 三.使用 四.结束 Linux下使用docker安装部署Sonar Qube 一.环境准备 本文默认会使 ...

  4. 「docker实战篇」python的docker爬虫技术-在linux下mitmproxy介绍和安装(四)

    原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「docker实战篇」python的docker爬虫技术-在linux下mitmproxy介绍和安装(四) 上次说了fiddl ...

  5. linux下qt的文件打包,【最详细最完整】在Linux 下如何打包免安装的QT程序?

    版权声明:嵌入式linux相关的文章是我的学习笔记,基于Exynos 4412开发板,一部分内容是总结,一部分是查资料所得,大家可以自由转载,但请注明出处! https://blog.csdn.net ...

  6. linux下tomcat部署java web项目_在linux下用tomcat部署java web项目的过程与注意事项

    在linux下用tomcat部署java web项目的过程与注意事项 一.安装JDK 到http://www.oracle.com/technetwork/java/javase/downloads/ ...

  7. 【安装】Linux系统(X64)安装Oracle 11g

    [安装]Linux系统(X64)安装Oracle 11g 一.修改操作系统核心参数 在Root用户下执行以下步骤: 1)修改用户的SHELL的限制,修改/etc/security/limits.con ...

  8. mysql5.7.20linux安装,linux下 mysql5.7.20安装(精华)

    在linux 系统中mysql配置文件的读取顺序为: /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 第一步 创 ...

  9. memcached linux 配置文件,Linux下Memcached服务器部署 | 系统运维

    操作系统:CentOS 6.x 64位 实现目的:安装部署Memcached服务器 一.防火墙设置 vi /etc/sysconfig/iptables #编辑防火墙配置文件,添加下面代码 -A IN ...

最新文章

  1. Reddit年度盘点:那些2019年最佳机器学习项目
  2. switch case in protected scope 异常解决
  3. 多线程基础(五)NSThread线程通信
  4. java工程师linux命令,这篇文章就够了
  5. react离开页面,自定义弹框拦截,路由拦截
  6. python----关键字参数
  7. DTD与XML的关系。。说的不错,拿来看看,学习了
  8. 推荐15个在线多媒体(图片、音频、视频)编辑器,互联网营销
  9. 计算机一级查询证书编号,如何查询计算机一级证书编号
  10. 工厂选择设备问题matlab,dsp实验一 常见问题教程
  11. 测试用例(分析法——详细场景法)
  12. TPC,TPCC,TPMC(计算机性能衡量指标) -----
  13. 云计算在我们日常生活中,主要有哪些应用
  14. 关于Vmware中的Ubuntu不断弹窗Num Lock的问题
  15. 7 21 第一次团队赛——————写给队友
  16. OptaPlanner将弃用DRL(Drools)评分方式!!!
  17. 笛卡尔坐标变换: UVA1602
  18. Android点选下拉列表框选项,获取选项内容
  19. Android 屏幕尺寸、屏幕分辨率(px)、屏幕像素密度(dpi)、密度无关像素(dp/dip)、屏幕适配
  20. grub4dos puppy linux,Grub2引导硬盘上的puppy linux的问题

热门文章

  1. 下载android版趣步最新版,趣步app手机版-趣步下载 4.1.1 安卓版 - 河东软件园
  2. 未来已来!全球一流科技盛会——云栖大会9月17日线上隆重举办
  3. 函数关于某直线x=a轴对称的证明
  4. 【图神经网络DGL】GCN在Karate Club上的实战(消息传递范式 | 生成训练可视化动图)
  5. 标 题: 档案在武汉人才交流中心的哥们看过来
  6. 如何才能让区块链技术避免成为一个口号?
  7. 学生管理系统的示意图
  8. Flash,RAM,ROM区别
  9. 模式分析之:比茶大陆商城分析
  10. 历史上影响最大的10首诗