Docker 拉取 oracle 11g镜像配置的详细教程
话不多说
开始记录docker拉取阿里的oracle11g 镜像并进行配置,
用pl/sql 可以登录为最终结果
navicat连接是在最后一步
参考:https://www.jb51.net/article/223375.htm
但是根据这个进行配置会有一些问题,所以写这篇记录一下,希望可以帮助其他人
开始:
①、开始拉取镜像-执行命令:
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
下载的过程少长,等待吧,喝杯咖啡,休息一会!(镜像6.8G)
下载完成后 查看镜像: docker images

可以看到已经下载好了
② 、创建容器
docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
这里说一下,命令后面的地址一定要是你下载的镜像地址也就是你拉取镜像名字,否则会出现名字已存在等问题!
如果创建成功能会返回容器id
③、启动容器
docker start oracle11g

④、进入镜像进行配置
1、 docker exec -it oracle11g bash
2、进行软连接
sqlplus /nolog

发现没有这个命令,用不了
3、切换到root 用户下
su root
密码:helowin

注意这里还是在容器当中。。有朋友退去了。。。。。。。
4、编辑profile文件配置ORACLE环境变量
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、创建软连接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
6、切换到oracle 用户
这里还要说一下,一定要写中间的内条 - 必须要,否则软连接无效

⑤ 、登录sqlplus并修改sys、system用户密码
sqlplus /nolog
conn /as sysdba

接着执行下面命令
alter user system identified by system;
alter user sys identified by sys;
也可以创建用户 create user test identified by test;
并给用户赋予权限 grant connect,resource,dba to test;
注意了这里的坑开始出现了
当执行修改密码的时候出现 : database not open
提示数据库没有打开,不急按如下操作
输入:
alter database open;
注意了:这里也许还会提示 :
ORA-01507: database not mounted
不急!继续!
=========== 解决方法===========
输入:alter database mount;
输入 :alter database open;

然后就可执行 修改数据库密码的命令了
改完之后输入:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
刷新下表
exit 是退休sql 软连接

⑥、使用pl/sql 进行连接
navicat 连接的直接跳过 第 ⑥ 步 但是 oracle 的 lsnrctl 服务 在第6步所以你还是看完在看第7步(虽然不需要干啥) 第7步是navicat连接的在最后
之前我们把端口映射到了1521上,所以我们需要进行配置 tnsnames.ora
几个朋友不知道ora文件在哪,所以添加了这一步
pl/sql 安装包,汉化包,秘钥工具
http://xiazai.jb51.net/202109/yuanma/PLSQL_Developer_jb51.rar
本地下载:
https://www.jb51.net/softs/737035.html
plsql安装配置工具包
https://www.jb51.net/article/170088.htm
docker_oracle11 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.211.135)(PORT =1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
打开pl/sql 进行登录 :提示监听程序当前无法识别连接描述符中请求的服务

这时我们需要去看一下oracle 的 lsnrctl 服务

看到这两个了么,任选其一,修改 tnsnames.ora的 service_name=helowinXDB
docker_oracle11 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.211.135)(PORT =1521))
)
(CONNECT_DATA =
(SERVICE_NAME = helowinXDB)
)
)
欧克,登录成功。

第7步是navicat连接
有几个朋友用的是navicat连的所以故此添加这一步
打开navicat后(navicat12不用配置oci.dll文件了)
直接新建连接


栏 目:其它服务器
下一篇:Docker部署用Python编写的Web应用的实践
本文标题:Docker 拉取 oracle 11g镜像配置的详细教程
本文地址:https://zz.feitang.co/server/33058.html
您可能感兴趣的文章
- 01-12Docker部署rabbitmq遇到的两个问题
- 01-12最新虚拟机VMware 14安装教程
- 01-12使用docker compose安装harbor私有仓库的详细教程
- 01-12Windows下Docker安装各种软件的详细过程
- 01-12seata docker 高可用部署的详细介绍
- 01-12浅谈Tomcat多层容器的设计
- 01-12Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤
- 01-12解决vscode docker插件docker.socket权限问题
- 01-12Docker中运行PostgreSQL并推荐几款连接工具
- 01-12Docker核心原理之 Cgroup详解


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-23linux中ftp无法访问怎么办
- 12-11docker存储目录迁移示例教程
- 12-10docker start启动容器后仍然exit状态的解决
- 12-10Linux下如何安装Logstash
- 12-05Docker安装Jenkins全过程
- 01-05Shell脚本去重的几种方法实例
- 12-22kvm虚拟机配置NAT端口转发的实现方法
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法




