Docker-14:Docker安装Oracle11g

简介: Docker 安装 Oracle

1. 背景

Oracle-Emblema

Docker

Oracle 作为全球最强大的关系型数据库,应用在各行各业。但是在 Linux 中安装 Oracle 非常麻烦,为了一次装好,也方便将来直接可以导出镜像在各平台移植使用,所以选择用 Docker 安装,并做详细记录,方便今后参考。

2. 安装

2.1. 环境准备

  • CentOs 7.0
  • Docker 环境

Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:05:12 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:03:33 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.6
  GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:          1.1.2
  GitCommit:        v1.1.2-0-ga916309
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

2.2. 搜索镜像


docker search oracle_11g

Oracle 镜像文件比较大,请检查自己磁盘空间。此处用一个博主上传的镜像,来演示。

20220726155418

2.3. 拉取镜像


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

2.4. 磁盘挂载

CentOs 宿主机构建一个目录用来存储 Oracle 的数据。


mkdir -p /data/oracle10g

20220726160152

3. 容器操作

3.1. 创建容器


docker run  -itd -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.aliyuncs.com/helowin/oracle_11g

备注:此处改为 Shell 脚本,可以重复使用。


docker rm -f oracle10g;
docker run -it -d -p 1521:1521 -v /data/oracle10g:/data/oracle --name oracle10g klwang/oracle10g

3.2. 进入容器


docker exec -it oracle bash

3.3. 环境设置

此时 sqlplus 是不可以用的,需要配置一下环境变量。

20220726163736

切换回到容器中的 root 用户,密码为 helowin

3.3.1. 编辑环境变量


vi /etc/profile

添加如下变量。


export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLEHOME/bin:PATH

保存后,将环境变量生效。


source /etc/profile 

3.3.2. 添加软连接

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

3.3.3. 切换到oracle用户


su - oracle

3.4. 登录oracle


sqlplus /nolog   --登录
conn /as sysdba

20220726194234

3.5. Oracle操作

3.5.1. 修改sys、system用户密码


alter user system identified by system ;--修改system用户账号密码;
alter user sys identified by sys ;--修改sys用户账号密码;

3.5.2. 添加和授权用户


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; --修改数据库最大连接数据;

3.5.3. 查询

show parameter password

20220726194511

3.5.4. 检查用户

select * from v$pwfile_users;

20220726194528

3.6. 重启服务


conn /as sysdba;--保存数据库
shutdown immediate; --关闭数据库
startup; --启动数据库
show user;

20220726194844

4. 远程登录

  • HOST: $HOST
  • POST: 1521
  • SID: helowin
  • User: test
  • PassWord:test

20220726194951

目录
相关文章
|
3月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
11天前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
76 3
docker 安装 Postgres 17.6
|
4月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
407 4
|
3月前
|
Linux Docker Windows
windows docker安装报错适用于 Linux 的 Windows 子系统必须更新到最新版本才能继续。可通过运行 “wsl.exe --update” 进行更新。
适用于 Linux 的 Windows 子系统需更新至最新版本(如 wsl.2.4.11.0.x64.msi)以解决 2025 年 Windows 更新后可能出现的兼容性问题。用户可通过运行 “wsl.exe --update” 或访问提供的链接下载升级包进行更新。
855 0
|
4月前
|
Linux iOS开发 Docker
MyEMS开源系统安装之Linux/macOS上的DOcker
本指南详细介绍了如何在Linux/macOS上使用Docker部署MyEMS系统。主要内容包括:前置条件(如安装Docker、npm和MySQL),以及分步骤部署各个组件(如myems-api、myems-admin、myems-modbus-tcp等)。每个步骤涵盖源代码复制、环境配置、镜像构建、容器运行及日志管理等操作,并提供了多平台构建的支持。最后,指南还说明了默认端口和登录凭据,帮助用户快速启动并访问MyEMS的管理界面和Web界面。
127 1
|
5月前
|
关系型数据库 MySQL 数据库
Docker 安装常用软件相关命令
本文介绍了在CentOS 7.9系统上安装Docker的详细步骤,包括添加阿里云镜像源、安装Docker及相关组件、启动服务以及配置镜像加速。同时,还展示了如何通过Docker安装MySQL 5.7版本数据库,涵盖拉取镜像、创建数据目录、运行容器及配置挂载点等操作,并提供验证安装成功的命令和截图。适合需要部署Docker与MySQL环境的用户参考。
311 5
|
5月前
|
存储 弹性计算 Linux
安装Docker
常见操作系统安装docker步骤
675 15