网站首页 > 技术文章 正文
Oracle 官方不支持在 Docker 中安装 Oracle Database,但是可以通过使用第三方的镜像和脚本来实现 Oracle 数据库的 Docker 化。下面是一个简单的例子,介绍如何使用 docker-compose 安装 Oracle 11g。
- 首先,在本地创建一个文件夹,用于存放 docker-compose.yml 文件和其他相关文件,例如:
mkdir oracle-docker
cd oracle-docker
- 在该文件夹中创建一个名为 docker-compose.yml 的文件,并将以下内容复制到文件中:
version: '3.7'
services:
oracle_11g:
image: registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
container_name: oracle_11g
environment:
- TZ=Asia/Shanghai
volumes:
- /etc/localtime:/etc/localtime:ro
- ./data/oracle:/data/oracle
- ./data/profile:/etc/profile
ports:
- 1521:1521
privileged: true
user: root
restart: always
command: /bin/bash -c "ln -s $ORACLE_HOME/bin/sqlplus /usr/bin"
deploy:
resources:
limits:
memory: 2G
reservations:
memory: 500M
networks:
application:
aliases:
- net-oracle_11g
networks:
application:
name: net
driver: bridge
/data/profile 为一下内容
vi /etc/profile
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
以上配置使用了第三方镜像 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g,该镜像基于 Oracle Database 11g 构建而成。
- 执行以下命令启动容器:
docker-compose up -d
该命令会下载并启动指定的镜像,并将容器暴露出来的 1521 端口映射到本地的 1521 端口上。
- 等待容器启动完成后,可以使用任意的 Oracle 客户端连接到数据库。
docker exec -it oracle_11g bash
- 设置软连
sqlplus /nolog
如果没有 进行一下操作然后在执行 source /etc/profile 使配置生效
最后方便使用创建软连接 ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
- 切换oracle用户
su - oracle
- 登录sqlplus并修改sys、system用户密码并且创建用户
sqlplus /nolog --登录
startup; --启动数据库,注意第一次进入才执行
conn /as sysdba --连接数据库
alter user system identified by system;–修改system用户账号密码;
alter user sys identified by system;–修改sys用户账号密码;
create user test identified by test; – 创建内部管理员账号密码;
grant connect,resource,dba to test; --将dba权限授权给内部管理员账号和密码;
alter profile default limit password_life_time unlimited; --修改密码规则策略为密码永不过期;
alter system set processes=1000 scope=spfile; --修改数据库最大连接数据;
修改以上信息后,需要重新启动数据库
conn /as sysdba
shutdown immediate; --关闭数据库
startup; --启动数据库
exit:退出软链接
- navicat无法登陆问题
alter system set local_listener=‘(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))’; – 然后重启,如果执行不成也退出
然后退出SQL页面再执行
lsnrctl start #开启监听
dbstart # 启动用户实例
以上就是使用 docker-compose 安装 Oracle 11g 的方法。需要注意的是,该方法使用的是第三方镜像,因此安全性和稳定性需要自行评估。同时,Oracle 官方不支持在 Docker 中运行 Oracle 数据库,因此使用该方法可能会有一些限制和风险。
猜你喜欢
- 2024-11-16 Linux环境下Oracle的安装部署(linux中安装oracle)
- 2024-11-16 Windows 系统下安装Java 22(windows安装java jdk)
- 2024-11-16 安装JDK需要几步?1、2走起,完成(安装jdk1.8教程)
- 2024-11-16 手把手教你Windows安装JDK8与环境配置
- 2024-11-16 Java JDK11 在windows上的安装和环境变量配置
- 2024-11-16 docker安装Oracle 11g(docker安装Oracle11g)
- 2024-11-16 如何在 Windows 11 上安装和使用 VirtualBox:2022详细的分步教程
你 发表评论:
欢迎- 07-10Oracle 与 Google Cloud 携手大幅扩展多云服务
- 07-10分享收藏的 oracle 11.2.0.4各平台的下载地址
- 07-10Oracle 和 Microsoft 推出 Oracle Exadata 数据库服务
- 07-10Oracle Database@Azure 推进到南美等新区域并增加了新服务
- 07-10Oracle宣布推出 Oracle Database@AWS 的有限预览版
- 07-10Oracle与Nextcloud合作,推出主权云上的安全协作平台
- 07-10NodeRED魔改版连接MsSql、PostgreSQL、MySQL、OracleDB存储无忧
- 07-10对于企业数据云备份,“多备份”承诺的是成本更低,管理更高效#36氪开放日深圳站#
- 605℃几个Oracle空值处理函数 oracle处理null值的函数
- 597℃Oracle分析函数之Lag和Lead()使用
- 585℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 581℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 577℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 570℃【数据统计分析】详解Oracle分组函数之CUBE
- 557℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 550℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- Oracle 与 Google Cloud 携手大幅扩展多云服务
- 分享收藏的 oracle 11.2.0.4各平台的下载地址
- Oracle 和 Microsoft 推出 Oracle Exadata 数据库服务
- Oracle Database@Azure 推进到南美等新区域并增加了新服务
- Oracle宣布推出 Oracle Database@AWS 的有限预览版
- Oracle与Nextcloud合作,推出主权云上的安全协作平台
- NodeRED魔改版连接MsSql、PostgreSQL、MySQL、OracleDB存储无忧
- 对于企业数据云备份,“多备份”承诺的是成本更低,管理更高效#36氪开放日深圳站#
- 解读丨《归档文件整理规则》— 电子文件元数据存储
- Data Guard跳归档恢复的实践(dataguard failover)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (57)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)