如何利用docker安装oracle?

前言

Oracle Database是一个可扩展、高性能和可靠的关系数据库管理系统,被广泛用于企业的数据管理和应用开发。它提供了强大的数据存储、查询和处理功能,支持复杂的数据模型和大规模的数据处理需求。Docker作为一个强大的容器化平台,因此我们可以利用docker来安装我们的oracle,以此提高开发和运维的效率。

安装docker

  • 多的不说,少的不唠,咱们先把要用的docker安装下(安装过的请忽略),按顺序执行以下命令:
csharp 复制代码
#安装Docker所需的依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加Docker的Yum仓库地址为阿里云镜像站点,用于获取Docker软件包
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装指定版本的Docker软件包
yum -y install docker-ce-18.03.1.ce 
#检测是否成功
docker version

安装oracle

获取镜像

bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
或者
docker pull registry.aliyuncs.com/helowin/oracle_11g
  • 如果你是公司内网,就无法像上面那样拉取镜像了,因此我们需要将需要的镜像上传到服务器某个目录,利用docker load加载进来就行了。
bash 复制代码
#从别的服务器生成docker-oracle.rar
docker save oracle(你服务器中镜像名称) -o docker-oracle.rar(你定义的镜像包名称)
#导入
docker load < docker-oracle.rar #注意自己的docker-oracle.rar目录

运行

ruby 复制代码
docker run -itd -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata -e ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 -e ORACLE_SID=helowin registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest
#检查是否成功
docker ps

oracle配置

  1. 进入oracle容器内部:docker exec -it oracle /bin/bash
  2. 切换到root用户 su root 密码:helowin
  3. 配置环境变量, 使用vi /etc/profile进行编辑, 末尾加上如下:
bash 复制代码
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLEHOME/bin:PATH
  1. 保存退出后,重新加载配置 source /etc/profile
  2. 创建软链接 ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
  3. 切换回oracle用户:su - oracle
  4. 添加远程登录用户:
sql 复制代码
create user test identified by 123456; #创建内部管理员账号密码
grant connect,resource,dba to test; #将dba权限授权给内部管理员账号和密码
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; #设置密码永不过期
alter system set processes=1500 scope=spfile; #修改数据库最大连接数据
  1. 修改完成之后,要重新启动一下数据库,使配置生效,先进入数据库 conn /as sysdba;,然后先关闭再开启(如下图)
  2. 利用navicat工具连oracle:sid:helowin 账号:test 密码 123456

结语

初次接触oracle,如有不足还请指正。后续如果有时间,会深入研究。

相关推荐
weixin_4508135341 分钟前
pdf文档转为markdown文档
linux·pdf
我的小卷呀1 小时前
Linux ip 命令底层逻辑与实战指南
linux·运维·c语言·网络协议·tcp/ip·网络安全
李白客1 小时前
时序数据库入门:什么是 TSDB?时序库与关系型数据库对比、主流产品选型指南(2026)
数据库·oracle·时序数据库
handler012 小时前
【Linux】ELF、链接与动态库,程序装载全解析
linux·运维·服务器·chrome·c·elf·文件
dishugj2 小时前
操作系统四大特征|软考架构师考点梳理
java·linux·服务器
全栈弄潮儿²⁰²⁴2 小时前
AI Agent 开发实战(7):如何接入搜索和数据库工具?
数据库·人工智能·ai·chatgpt·oracle·agent·ai编程
Huangjin007_2 小时前
【Linux 系统篇(十九)】进程(七):深入理解虚拟地址空间:从进程地址空间到内核管理
linux·运维·服务器
YIN_尹2 小时前
【Linux系统编程】模拟实现一个最简版C语言标准IO库
linux·服务器·c语言
aningx2 小时前
使用自定义bash脚本预防oom卡死 v2
linux
cjp5604 小时前
011. UG二次开发,UG管道通讯服务器与wpf客户端通讯
linux·运维·服务器