docker容器安装oracle数据库
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker容器安装oracle数据库相关的知识,希望对你有一定的参考价值。
参考技术A 1、docker search oracle[搜索docker云平台上的oracle的镜像]2、docker pull registry.cn-hangzhou.aliyuncs.com/qida/oracle-xe-11g【拉取】
3、docker images
4、docker run -d -p 49160:22 -p 49161:1521 -e ORACLE_ALLOW_REMOTE=true --name oracle -v /dockerOracleData:/dockerOracleData registry.cn-hangzhou.aliyuncs.com/qida/oracle-xe-11g
5、docker ps
6、docker s
7、sqlplus / as sysdba
PS:docker容器常用命令
docker search xxx:搜索docker云平台相关的镜像
docker pull xxx:根据名称拉取docker云平台镜像
docker images:列出本地镜像
-a:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
-digests:显示镜像的摘要信息
-f:显示满足条件的镜像
--format:指定返回值的模板文件
--no-trunc:显示完整的镜像信息
-q:只显示镜像ID
docker ps:列出容器
-a:显示所有的容器,包括未运行的
-f:根据条件过滤显示的内容
--format:指定返回值的模板文件
-l:显示最近创建的容器
-n:列出最近创建的n个容器
--no-trunc:不截断输出
-q:静默模式,只显示容器编号
-s:显示总的文件大小
docker start :启动一个或多个已经被停止的容器
docker stop :停止一个运行中的容器
docker restart :重启容器
docker rm : 删除一个或多个容器。
-f:通过 SIGKILL 信号强制删除一个运行中的容器
-l:移除容器间的网络连接,而非容器本身
-v:删除与容器关联的卷
centos7下容器安装oracle11g
1、docker 镜像拉取以及启动
-
docker pull jaspeen/oracle-11g
-
创建宿主机oracle安装目录以及数据目录
mkdir -p /server/oracle mkdir -p /server/dpdump
-
下载 oracle 并存放于服务器中
oracle 下载网址:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html
-
解压缩并删除安装包
压缩包放到/server/oracle目录
[root@centos7 oracle]# ls linux.x64_11gR2_database_1of2 linux.x64_11gR2_database_2of2
unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip
[root@centos7 oracle]# ls database
-
启动 docker
docker run -d -p 1521:1521 -v /server/oracle:/install -v /server/dpdump:/opt/oracle/dpdump --name=oracle11g jaspeen/oracle-11g
-
查看启动状态:
[root@centos7 oracle]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c5e913b4e96b jaspeen/oracle-11g "/assets/entrypoin..." 3 days ago Up 3 seconds 0.0.0.0:1521->1521/tcp, 8080/tcp oracle11g
-
由于版权问题,拉取下来的 docker 镜像是不包含任何版本的 oracle 的
-
故在启动 docker 后,需要创建一个自己的镜像以备使用
[root@centos7 oracle]# docker commit oracle11g oracle11g-installed [root@centos7 oracle]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE oracle11g-installed latest 4a55732efad1 3 days ago 2.83 GB docker.io/jaspeen/oracle-11g latest 0c8711fe4f0f 4 years ago 281 MB
3、使用pl/sql连接oracle
-
进入oracle容器
docker exec -it 8164f1475ee5 /bin/bash
-
修改oracle环境变量
[root@8164f1475ee5 /]# cd etc [root@8164f1475ee5 etc]# vi profile #在最后增加 export ORACLE_HOME=/opt/oracle/app/product/11.2.0/dbhome_1 export ORACLE_SID=orcl export PATH=$ORACLE_HOME/bin:$PATH #保存离开 :wq [root@localhost ~] source /etc/profile #使得修改生效
-
登陆oracle账号
[root@8164f1475ee5 /]# su - oracle Last login: Tue Jun 9 13:01:34 UTC 2020 [oracle@8164f1475ee5 ~]$ sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 Production on Tue Jun 9 13:15:18 2020 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL> conn /as sysdba Connected. SQL> alter user system identified by system; User altered. SQL> alter user sys identified by sys; User altered. SQL> create user ETS identified by ETS; User created. SQL> grant connect,resource,dba to ETS; Grant succeeded. SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options [oracle@8164f1475ee5 ~]$ exit logout [root@8164f1475ee5 /]#
-
使用pl/sql连接
以上是关于docker容器安装oracle数据库的主要内容,如果未能解决你的问题,请参考以下文章
虚拟机Linux安装Oracle容器并实现局域网其他主机访问查询
在官方 Oracle 数据库 docker 容器中成为 root