docker安装oracle11g

  1. 下载镜像
copy
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
  1. 启动容器
copy
默认启动容器的方式
docker run -d -it -p 1521:1521 --name oracle11g --restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
copy
持久化启动的方式
docker run -d -it -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
  1. 查看运行状态
copy
docker ps -a
  1. 容器内环境配置
copy
1.进入容器 docker exec -it oracle11g bash
2.切换到 root 用户 su root,密码为 helowin
3.docker容器配置环境变量不是在 /etc/profile 中,容器启动不会走这个文件。
可以将环境变量的配置设置在 /home/oracle/.bashrc 文件下
4.编辑环境变量 vi /home/oracle/.bashrc,在文件最后加入以下命令
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
:wq 保存并退出
5.然后使用 source /home/oracle/.bashrc 刷新环境变量,并使之生效
  1. 使用 sqlplus /nolog进入oracle命令行
  2. 使用 “操作系统认证” 的方式,登录oracle conn / as sysdba ,这个oracle镜像密码默认是helowin。connected成功之后,即可用数据库软件尝试连接。

我是用数据库软件连接oracle时,用的system用户,密码应该默认是helowin,但是提示我密码不对,所以我手动修改了system的密码。

copy
sqlplus / as sysdba ---------sysdba为超级用户
alter user 用户名 account unlock; --------- 解除锁定(必须带“;”号,注意用英文字符)
alter user 用户名 identified by 密码; -------------修改密码

也有可能连不上是因为需要配置防火墙
防火墙要允许 1521 端口,外部的数据库管理工具才能连的上

copy
# 打开防火墙
systemctl start firewalld
# 查询端口状态
firewall-cmd --query-port=1521/tcp
# 永久性开放端口
firewall-cmd --permanent --zone=public --add-port=1521/tcp
# 重启防火墙
firewall-cmd --reload
firewall-cmd --query-port=1521/tcp
posted @   AIHHUAO  阅读(501)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示