Docker中安装Oracle-12c

这篇具有很好参考价值的文章主要介绍了Docker中安装Oracle-12c。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

MySQL和Oracle是开发中常用到的两个关系型数据库管理系统,接上一期内容,这一期在Docker中完成oracle-12c的安装和配置。

安装oracle-12c

1、拉取oracle-12c镜像

启动Docker Desktop后在cmd窗口中执行docker search oracle命令,搜索Oracle相关的镜像,可以看到搜索结果中的truevoly/oracle-12c
docker安装oracle12c,Docker,Oracle,docker,oracle,数据库
不指定版本则默认下载oracle-12c最新版本的镜像,Oracle的镜像文件较大,拉取镜像会久一些。

# 拉取镜像(默认下载oracle-12c最新版本的镜像)
docker pull truevoly/oracle-12c

docker安装oracle12c,Docker,Oracle,docker,oracle,数据库


2、创建并启动容器

cmd中执行以下命令,在docker中创建并启动一个oracle-12c容器,对物理机暴露2122、9090和1521三个端口分别映射到容器内的22、8080和1521端口,并且将容器内的oracle目录挂载到物理机的D盘中

# 创建oracle-12c容器并启动
docker run -d -p 2122:22 -p 9090:8080 -p 1521:1521 -v D:\lingSoftware\Docker\WorkSpace\Oracle:/u01/app/oracle/ --name oracle-12c truevoly/oracle-12c

查看容器启动日志(看到Import finished Database ready to use. Enjoy! 即容器创建并启动完成)

# 查看oracle-12c启动日志
docker logs -f oracle-12c

docker安装oracle12c,Docker,Oracle,docker,oracle,数据库
docker安装oracle12c,Docker,Oracle,docker,oracle,数据库
若日志中出现以下报错,是因为对外暴露的端口不可用访问权限已被禁止,只要更改创建容器时对外暴露的端口即可

docker: Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:1521 -> 0.0.0.0:0: listen tcp 0.0.0.0:1521: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

可在cmd中执行以下命令查看哪些端口被禁用TCP协议

# cmd命令查看哪些端口被禁用TCP协议
netsh interface ipv4 show excludedportrange protocol=tcp

docker安装oracle12c,Docker,Oracle,docker,oracle,数据库


3、修改oracle账号密码设置

truevoly/oracle-12c镜像创建的容器默认有syssystem两个用户,密码都是oracle,默认的一个SID/服务名是xe,Oracle的用户密码默认有效期是180天,180天后用户会自动锁住,下面进入oracle-12c容器内将密码的有效期设置为永久!

# 进入oracle-12c容器内
docker exec -it oracle-12c /bin/bash
# 切换成oracle用户
su oracle
# 进入sqlplus
$ORACLE_HOME/bin/sqlplus / as sysdba
# 设置密码有效期为无限制
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
# 解锁system用户
SQL> alter user SYSTEM account unlock;

docker安装oracle12c,Docker,Oracle,docker,oracle,数据库

4、物理机连接oracle-12c

使用PL/SQL或Navicat等工具测试连接oracle-12c
docker安装oracle12c,Docker,Oracle,docker,oracle,数据库

拓展

Oracle创建表空间与用户

以下创建一个ling_mf3数据表空间

-- 创建ling_mf3数据表空间
create tablespace ling_mf3 datafile '/u01/app/oracle/data/ling_mf3.dbf' size 50M;

创建表空间成功,同时也会在挂载的目录下生成相应数据文件
docker安装oracle12c,Docker,Oracle,docker,oracle,数据库
以下创建一个用户ling并授权,且设置ling_mf3为它的默认表空间

-- 创建ling用户密码为meet0and1#202302并设置ling_mf3为它的默认表空间
create user ling identified by "meet0and1#202302" default tablespace ling_mf3;
-- 给用户ling授权 dba:管理员的权限
grant connect,resource,dba to ling;

docker安装oracle12c,Docker,Oracle,docker,oracle,数据库

重启Oracle服务

Docker Desktop中可以一键重启,但实际开发中一般是在Linux环境中,我这里演示用命令重启Oracle服务

-- 查看监听状态
lsnrctl status
-- 停监听
lsnrctl stop
sqlplus / as sysdba
-- 停止oracle
SQL>shutdown immediate;
-- 启服务
SQL>startup;
SQL>exit
-- 启监听
lsnrctl start

更多常用…

-- 删除表空间
drop tablespace ling_mf3;

-- 查询所有的表空间
select tablespace_name from dba_tablespaces;

-- 查看当前的用户和表空间
select username,default_tablespace from user_users;

-- 查看当前用户的角色
select * from user_role_privs;
-- 查询实例名/SID/服务名
select instance_name from v$instance;
-- 查看Oracle版本
select * from v$version;

-- 查看数据库允许的最大连接数
select value from v$parameter where name = 'processes';

-- 查看当前连接数
select count(*) from v$process;

-- 查看数据库当前会话的连接数
select count(*) from v$session;

-- 查看数据库当前的并发连接数
select count(*) from v$session where status = 'ACTIVE';

后记

若有问题可在公众号遇见0和1后台加群艾特我咨询!文章来源地址https://www.toymoban.com/news/detail-521365.html


到了这里,关于Docker中安装Oracle-12c的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker安装mysql、clickhouse、oracle等各种数据库汇总

    1:docker 安装mongo数据库并使用 官网:https://www.mongodb.com/docs/manual/ mongo shell教程1:http://c.biancheng.net/mongodb2/connection.html 安装1 :https://www.zhihu.com/question/54602953/answer/3047452434?utm_id=0 安装2:https://www.duidaima.com/Group/Topic/ArchitecturedDesign/9182 使用驱动进行java开发:https://mongodb.github.

    2024年02月10日
    浏览(53)
  • 安装oracle12c数据库

    目录 安装文件下载         下载程序下载步骤 安装步骤 安装前提

    2024年02月16日
    浏览(55)
  • docker快速部署oracle19c、oracle12c,测试环境问题复现demo快速搭建笔记

    (复制sql,替换表名执行完毕后,再修改自己想要的字段即可) (复制sql,替换自己的表名) 一个oracle表示一个实例,一个实例可以配置多个服务,独立维护的oracle服务 一个服务内可以有多个表空间,默认表空间就有很多,比如常见的SYSTEM、TEMP、USERS 常见的默认角色: 1、

    2024年02月04日
    浏览(65)
  • 4. Oracle12c数据库在Linux系统安装步骤

    1.Oracle11gR2数据库安装 https://edu.csdn.net/course/detail/27750 2.Oracle 12c 数据库安装 https://edu.csdn.net/course/detail/35882 ​ 3.Oracle 19c 数据库一键安装 https://edu.csdn.net/course/detail/39198 4.Oracle 19c RAC For Linux安装部署 (视频讲解) https://edu.csdn.net/course/detail/35792 5.oracle 19c 数据库基础和日常管理

    2024年02月15日
    浏览(50)
  • Docker 安装Oracle 11g

    前言 想装个oracle又怕占内存,于是就想用docker装一个,在网上找了很多资料,期间遇见过很多的坑。下面是我总结并实验成功的方法,直接无脑粘贴复制 就行 docker-compose文件 创建文件夹 放入yml文件至/usr/local/docker/oracle 启动oracle 配置oracle 进入docker容器内部 使用内部root 用户

    2024年02月15日
    浏览(59)
  • docker 安装Oracle19c

    如下操作基于已经装好docker 环境 1.下载镜像 docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c 通过docker images 命令查看 如下图:已经有oracle 19c镜像。  2.创建挂载文件 # 创建文件 mkdir -p /mydata/oracle/oradata # 授权,不授权会导致后面安装失败 chmod 777 /mydata/oracle/oradata 3.安装Or

    2024年02月04日
    浏览(48)
  • docker 安装 oracle19c

    docker 安装 oracle19c 拉取镜像 创建挂载目录 授权 安装 或者讲字符集修改为 AL32UTF8 安装过程中可以通过日志监控安装情况 连接 Oracle 数据库 打开容器终端 sqlplus登录 sysdba身份登录,默认进入CDB 进入CDB 进入PDB 查看连接模式 网页登录 https://ip:5500/em sqldeveloper Oracle SQL Developer Do

    2024年02月10日
    浏览(50)
  • Docker安装Oracle19c

    1.下载镜像 到 https://hub.docker.com 搜索合适的镜像,这里选择banglamon/oracle193db:19.3.0-ee。  拉取镜像 docker pull banglamon/oracle193db:19.3.0-ee 这里走了点弯路,这个镜像安装后实例无法正常启动,而且挂载的目录下面没有生成文件,想办法启动以后sqlplus能用,但容器外部连接报ora-1

    2023年04月21日
    浏览(47)
  • Docker安装Oracle11g(安装简单)

    背景 在Linux中安装oracle非常麻烦,相信每个人也会遇到各种坑。为了一次装好,也方便将来直接可以导出镜像在各平台移植使用,所以选择用docker安装 Oracle。 使用官方镜像下载速度非常慢,因此,我们可以使用阿里镜像。 拉取镜像 拉取oracle_11g镜像 拉取oracle镜像(oracle 11.0

    2024年02月13日
    浏览(51)
  • docker 方式安装ORACLE 11g

    参考:Docker 下拉取oracle 11g镜像配置_只叹奈何的博客-CSDN博客            https://blog.csdn.net/qq_38380025/article/details/80647620            docker 安装 oracle11g_征尘bjajmd的博客-CSDN博客 开始:  ①、开始拉取镜像-执行命令:          docker pull registry.cn-hangzhou.aliyuncs.com/helowin/or

    2024年02月13日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包