1、使用docker 命令搜索oracle 镜像,前提是已安装了Docker

docker  search oracle

2、下载相应版本的oracle 镜像

docker pull sath89/oracle-12c

3、查看docker 安装下的oracle 镜像

docker images

4、根据下载的oracle 镜像创建oracle容器

(-v  /var/lib/oracle/oradata:/u01/app/oracle/oradata) 这个oracle数据绑定到宿主映射文件夹好像有问题,发现有部分文件未同步,导致启动oracle失败,不明原因,还望大神解答,故保持数据存储在容器中(这种方式会随着容器的删除导致数据丢失,还望勿用于生产环境)。

docker run --restart=always -d --name docker-oracle -p 1521:1521 -p  8080:8080   sath89/oracle-12c:latest

命令详解:

--restart always 假如docker进程挂掉了,重启时把这个容器也启动起来;
-d 在后台运行
--name 这个容器的名称
-p 映射服务端口到虚拟机
-v 挂载的目录,把数据卷挂到本地,防止数据丢失
sath89/oracle-12c 镜像名称
latest 镜像的版本号

5、查看运行的docker 容器

docker ps

6、配置oracle默认字符类型为utf8, 进入容器

docker exec -it [容器名/容器id(docker ps 可查看)]  /bin/bash

7、修改Oracle 为UTF8字符集

su oracle

cd $ORACLE_HOME/bin

sqlplus "/as sysdba"

shutdown immediate;

startup mount;

alter system enable restricted session;

alter system set job_queue_processes=0;

alter system set aq_tm_processes=0;

alter database open;

alter database character set internal_use utf8;    (/alter database character set internal_use utf8;  两命令任选一)

shutdown immediate;

startup;

8、注:pl/sql客户端环境也需要安装相同字符集,否则客户端插入中文会有乱码

(1) 注册表

regedit->HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->ORACLE\KEY_OraClient12Home1->NLS_LANG

(2)环境变量

(3)重启PL/SQL客户端,查看Help 的SupportInfo 里的NLS_LANG是否有更新为AMERICAN_AMERICA.UTF8

(4)进入pl/sql 客户端,执行

select userenv('language') from dual;

出现如下结果。3者一致即大功告成

(5)执行以下SQL可查看相关数据文件,控制文件以及日志文件路径

//数据文件

select name from v$datafile;

//控制文件

select name from v$controlfile;

//日志文件

select member from v$logfile;

本人辛苦归纳总结成果,若对你有帮助请不吝点个推荐,谢谢喔 ~ ~!!

Docker 安装Oracle的更多相关文章

  1. mac系统用docker安装oracle数据库

    oracle没有mac可用的版本,最好的办法是通过docker安装 一.下载docker 1.通过brew下载 brew cask install docker 2.手动下载(需要vpn) https ...

  2. docker安装oracle

    最近工作上面遇到一个性能相关的问题,大体描述一下: 批量任务执行的过程中导致数据库sql执行时间过长,查看之后是由于批量任务占满数据库连接池导致的,至于为什么批量任务会不受系统控制导致连接池占满就不说 ...

  3. docker 安装 oracle

    docker 安装 oracle 部署链接:https://www.linuxidc.com/Linux/2017-03/141760.htm 本次使用docker安装oracle 1.搜索可使用的镜 ...

  4. Docker | Mac 通过 Docker 安装 Oracle

    Docker | Mac 通过 Docker 安装 Oracle 前言: Oracle 10g 以后就不支持 Mac 版本,因此 Mac 用户需要安装的话可以通过虚拟机或者 Docker 1.在 do ...

  5. 使用Docker安装Oracle数据库

    在很多时候,我们需要在本地安装Oracle数据库,但是整个安装的过程时间非常长而且安装文件大,那么有不有更好的办法来安装Oracle数据库既能减少安装的时间而且还能够快速进行部署呢?答案就是使用Doc ...

  6. ubuntu docker 安装 oracle

    1.ubuntu 安装docker sudo apt-get update sudo apt-get docker.io 2.docker下载oracle镜像 sudo docker pull wna ...

  7. Win10系统使用Docker安装oracle并通过Navicat for oracle进行登录

    一.安装Docker Linux系统可以直接采用命令进行Docker安装: Win7系统安装Dokcer实际通过Boot2Docker在Windows下安装一个VirtualBox来实现: Boot2 ...

  8. docker安装Oracle 12c

    1.安装阿里的docker源: cat /etc/docker/daemon.json { "registry-mirrors": ["https://pee6w651. ...

  9. Docker 安装 oracle 并使用 navicat 实现外部连接

    1,拉取 docker 镜像:docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 1.1 , 该镜像由阿里云提供,比较大, ...

随机推荐

  1. 机器学习——支持向量机(SVM)

    支持向量机原理 支持向量机要解决的问题其实就是寻求最优分类边界.且最大化支持向量间距,用直线或者平面,分隔分隔超平面. 基于核函数的升维变换 通过名为核函数的特征变换,增加新的特征,使得低维度空间中的 ...

  2. Redis集群增加节点和删除节点

    本文主要是承接上一篇文章Redis集群的离线安装成功以后,我们如何进行给集群增加新的主从节点(集群扩容)以及如何从集群中删除节点(集群缩容),也就是集群的伸缩,集群伸缩的原理是控制虚拟槽和数据在节点之 ...

  3. CommonsMultipartFile 转为 File 类型

    1.我们可以查看CommonsMultipartFile的源码发现有这样一个方法 @Override public InputStream getInputStream() throws IOExce ...

  4. 基于python的selenium两种文件上传操作

    方法一.input标签上传     如果是input标签,可以直接输入路径,那么可以直接调用send_keys输入路径,这里不做过多赘述,前文有相关操作方法. 方法二.非input标签上传 这种上传方 ...

  5. Linux 笔记 - 第十二章 Shell 脚本

    博客地址:http://www.moonxy.com 一.前言 常见的编程语言分为两类:一类是编译型语言,如:C.C++ 和 Java等,它们远行前要经过编译器的编译.另一类是解释型语言,不需要编译, ...

  6. Tomcat启动时设置Jdk版本

    1. Window版本Tomcat 到bin下的setclasspath.bat文件,在文件的开始处添加如下代码: set JAVA_HOME=D:\Program Files\Java\jdk1.8 ...

  7. spring集成mybatis-plus

    一.mybatis-plus 使用mybatis-plus可以轻松实现通用crue.通用service,不用再在xml.dao.service里写增删改查的代码(需要写特殊方法的时候可以按原先的来), ...

  8. [C++]invalid initialization of non-const reference of type 'std::__cxx11::string& {aka std::__cxx11::basi

    解决方法:在参数前面加一个cosnt或者把引用符号去掉

  9. Linux线程唤醒与等待

    生产者消费者模式在程序设计中出现频率非常高,经常会有线程间通过消息队列或其他共享变量进行交互的场景.而这时就会出现一个问题,消费者如何知道生产者已经生产了数据呢?有的程序会采取消费者循环判断消息队列大 ...

  10. .NET Core使用NPOI导出复杂Word详解

    前言: 最近使用NPOI做了个导出Word文档的功能,关于使用.NET Core 导出Word文档的方式有很多.最终我为什么选择了NPOI来实现了这个功能,首先是NPOI是一个开源,免费且容易上手的第 ...