docker-compose搭建起oracle

version: "3"
services:
  oracle_db:
    image: wnameless/oracle-xe-11g
    volumes:
      - ./data/oracle_data:/opt/oracle/oradata
      - ./oracle:/u01/app/oracle
    ports:
      - 14420:1521

进入镜像后使用sqlplus进行链接(直接sqlplus连接), 或者使用Navicat等图形化数据库软件进行连接.

账户名: system

密码: oracle

  1. 密码过期问题

由于oracle有默认密码, 且有30天的有效时间, 如果过了30天则外部就会连不上服务端, 解决方法如下

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
查看修改结果

select * from dba_profiles WHERE dba_profiles.profile='DEFAULT';
如果是

PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT

------------------------------ -------------------------------- ------------- ----------------------

DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD UNLIMITED

DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED

LIMIT列显示为, UNLIMITED则表示成功

  1. 数据卷挂载问题
    tips: 如果遇到数据卷挂在起不来的问题可以暂时注释掉挂载(volumes), 先将容器启动, 再将容器内的挂载卷复制出来即可
posted @ 2021-10-20 14:29  つつつつつつ  阅读(673)  评论(0编辑  收藏  举报