当前位置: 首页 > news >正文

Linux离线安装Docker-Oracle_11g

拉取oracle11g镜像

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

创建11g容器

docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

查看容器是否创建成功

docker ps -a

导出oracle容器,查看正在运行的 Docker 容器的 ID 或名称,假设容器的名称为oracle11g

docker export oracle11g > oracle11g.tar

给导出容器加775权限

chmod 775 oracle11g.tar

离线环境先重启docker

sudo systemctl restart docker

把oracle11g.tar拷贝到离线环境,用以下命令加载docker镜像

docker load -i oracle11g.tar

查看镜像

docker images

修改镜像版本名称和名字

docker tag id name:v修改成功后再查看
docker images

启动oracle,把docker 里面的db文件外挂到宿主机,做文件的持久化

docker run -d -p 1521:1521 --name oracle11g -v /my/local/path/oracle11g:/opt/oracle/oradata oracle11g:v1这条命令运行一个名为 ​oracle11g​的容器,映射主机的1521端口到容器的1521端口,并将容器内的 ​/opt/oracle/oradata​目录映射到主机上的 ​/my/local/path/oracle11g​路径。下面是一些解释:​​-d​ :以守护进程方式在后台运行容器。
​​-p 1521:1521​:将主机的1521端口映射到容器的1521端口,允许通过主机访问Oracle数据库服务。
​​--name oracle11g​:为容器指定一个名称为 ​oracle11g​,方便管理和识别容器。
​​-v /my/local/path/oracle11g:/opt/oracle/oradata​ :将主机上的 ​/my/local/path/oracle11g​目录挂载到容器内的 ​/opt/oracle/oradata​目录,用于持久化存储Oracle数据库数据。
​​oracle11g:v1​:运行的镜像名称及版本。
综上所述,这个命令的目的是以后台模式运行一个 Oracle 11g 数据库容器,可以通过主机的1521端口访问数据库服务,并且数据存储在主机的 ​/my/local/path/oracle11g​目录中。如果镜像名称和版本正确,并且本地路径 ​/my/local/path/oracle11g​存在且合适,那么这个命令会成功运行容器。

配置oracle

docker exec -it oracle11g bash

切换到root下

su root密码:helowin

配置profile文件

vi /etc/profile在最后加3行
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH保存:wq
让配置生效:source /etc/profile

创建连接

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin切换到oracle账户
su - oracle修改sys、system密码
sqlplus /nolog
conn /as sysdbaalter user system identified by oracle;
alter user sys identified by oracle;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改中文编码

select * from nls_database_parameters;alter database character set  ZHS16GBK;如果遇到不能修改,则调用以下步骤:alter system enable restricted session;alter system set job_queue_processes=0;alter system set aq_tm_processes=0;alter database open;alter database character set ZHS16GBK;当系统提示字符集必须为旧字符集的超集时,可用下面的句强制修改字符集
alter database character set internal_use ZHS16GBK;

查看实例

lsnrctl status

到上面数据库就准备好了

解决连接受限问题

ALTER SYSTEM DISABLE RESTRICTED SESSION:

连接成功

参考:Docker安装Oracle_11g的方法_docker安装oracle11g-CSDN博客

http://www.lryc.cn/news/325806.html

相关文章:

  • web前端3.19
  • Rust 函数体内能定义数据类型或者做其他什么事情吗?
  • flask_restful结合蓝图使用
  • 干货分享之反射笔记
  • 使用小皮【phpstudy】运行Vue+MySql项目
  • 局部静态变量实现单例模式,线程安全(推荐使用)c++11
  • Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
  • Mybatis-Plus——09,代码自动生成器
  • Temu api接口 获取商品详情 数据采集
  • 安捷伦Agilent N1912A功率计
  • ES 进阶知识
  • ChatGPT 对 ELT的理解
  • qt事件机制学习笔记
  • 网红电商主播培养体系招聘管理制度孵化方案
  • Android获取经纬度的最佳实现方式
  • 芒果YOLOv8改进137:主干篇CSPNeXt,小目标检测专用,COCO数据集验证,协调参数量和计算量的均衡,即插即用 | 打造高性能检测
  • 【测试开发学习历程】认识Python + 安装Python
  • webpack proxy工作原理?为什么能解决跨域?
  • ArkTS编写的HarmonyOS原生聊天UI框架
  • uni-app中web-view的使用
  • 前端跨域概念及解决方法
  • Redis中的事务机制
  • 从零到一构建短链接系统(八)
  • 缺省和重载。引用——初识c++
  • java常用IO流功能——字符流和缓冲流概述
  • Python中模块的定义、用法
  • 【vscode 常用扩展插件】
  • Retelling|Facebook2
  • 读3dsr代码①测试
  • Vant Weapp小程序 van-uploader 文件上传点击无反应,删除无反应