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. jQuery - 02. 样式表属性操作/类操作、动画、显示隐藏、滑入、淡入、停止动画、节点操作、添加对象、清空节点

    样式表属性操作.css $("div").css({'width':100,'height':100,'background':'red'}); $("div" ...

  2. Vue之render渲染函数和JSX的应用

    一.模板缺陷 模板的最大特点是扩展难度大,不易扩展.可能会造成逻辑冗余 <Level :type="1">哈哈</Level> <Level :typ ...

  3. equals、==、hashCode

    equals和==的区别 ==主要用来比较基本数据类型,而equal主要用来比较对象是否相等.equal是Object的方法. 如果两者都用来比较对象的相等性,那么如果两个引用地址相同,那么==就返回 ...

  4. FreeSql (七)插入数据时忽略列

    var connstr = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;" + "Initia ...

  5. Google 官方 侧滑 drawerlayout

    一.概述 目前侧滑框架已经很多了,但是我常用的也就那么2个 ,slidingmenu 和sidemenu-android, 但是项目要求使用官方的,所以就看了一下drawerlayout 二.代码 官 ...

  6. Vuex,从入门到...

    Vuex 是什么? 官方是这么说的:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 不懂? ...

  7. CTC安装错误之:binding.cpp:6:29: fatal error: torch/extension.h: No such file or directory

    错误原因:该问题主要由于CTC的版本导致. 解决方法: 在终端打开warp-ctc文件夹: cd warp-ctc 然后:git checkout ac045b6072b9bc3454fb9f9f17 ...

  8. TestNG(十) 依赖测试

    package com.course.testng.suite; import org.testng.annotations.Test; public class DepenTest { @Test ...

  9. C++解决最基本的迷宫问题

    问题描述:给定一个最基本的迷宫图,用一个数组表示,值0表示有路,1表示有障碍物,找一条,从矩阵的左上角,到右下角的最短路.求最短路,大家最先想到的可能是用BFS求,本文也是BFS求最短路的. 源代码如 ...

  10. 众咖云集的 PyCon 2019 上海站,大佬们都讲了啥

    9 月 21 号周六,我参加了 PyCon China 2019 上海站,这是每年一届的 Python 中国开发者大会. 今年的上海站比往年的阵容扩大很多,「流畅的 Python」作者.Flask 作 ...