Docker安装Oracle_11g数据库并配置

简介: Docker安装Oracle_11g数据库并配置

一文搞懂Docker的安装 https://blog.csdn.net/qq_44895681/article/details/105540702


环境


CentOS 7.5


Docker 20.10.2


Oracle_11g


安装Oracle数据库


1.搜索oracle镜像


docker search oracle

[root@localhost ~]# docker search oracle
NAME                                  DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
oraclelinux                           Official Docker builds of Oracle Linux.         731       [OK]
jaspeen/oracle-11g                    Docker image for Oracle 11g database            169                  [OK]
oracleinanutshell/oracle-xe-11g                                                       138
wnameless/oracle-xe-11g-r2            Oracle Express Edition 11g Release 2 on Ubun…   58
absolutapps/oracle-12c-ee             Oracle 12c EE image with web management cons…   46
araczkowski/oracle-apex-ords          Oracle Express Edition 11g Release 2 on Ubun…   30                   [OK]
truevoly/oracle-12c                   Copy of sath89/oracle-12c image (https://git…   27
bofm/oracle12c                        Docker image for Oracle Database                24                   [OK]
datagrip/oracle                       Oracle 11.2 & 12.1.0.2-se2 & 11.2.0.2-xe        20                   [OK]
quillbuilduser/oracle-18-xe           Oracle 18c XE Image for Quill Testing Purpos…   20
openweb/oracle-tomcat                 A fork off of Official tomcat image with Ora…   8                    [OK]
binarybabel/oracle-jdk                Oracle JDKs (Alpine, CentOS, Debian) rebuilt…   5                    [OK]
iamseth/oracledb_exporter             A Prometheus exporter for Oracle modeled aft…   3
18fgsa/oracle-client                  Hosted version of the Oracle Container Image…   2
paulosalgado/oracle-java8-ubuntu-16   Oracle Java 8 on Ubuntu 16.04 LTS.              2                    [OK]
softwareplant/oracle                  oracle db                                       2                    [OK]
arm64v8/oraclelinux                   Official Docker builds of Oracle Linux.         1
roboxes/oracle7                       A generic Oracle Linux 7 base image.            1
publicisworldwide/oracle-core         This is the core image based on Oracle Linux…   1                    [OK]
amd64/oraclelinux                     Official Docker builds of Oracle Linux.         1
toolsmiths/oracle7-test                                                               0
bitnami/oraclelinux-extras            Oracle Linux base images                        0                    [OK]
bitnami/oraclelinux-runtimes          Oracle Linux runtime-optimized images           0                    [OK]
pivotaldata/oracle7-test              Oracle Enterprise Linux (OEL) image for GPDB…   0
gizmotronic/oracle-java               Ubuntu 16.04 image with Oracle Java             0                    [OK]

2.拉取阿里云oracle镜像


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

[root@localhost ~]# docker pull registry.aliyuncs.com/helowin/oracle_11g
Using default tag: latest
latest: Pulling from helowin/oracle_11g
ed5542b8e0e1: Already exists
a3ed95caeb02: Already exists
1e8f80d0799e: Already exists
Digest: sha256:4c12b98372dfcbaafcd9564a37c8d91456090a5c6fb07a4ec18270c9d9ef9726
Status: Image is up to date for registry.aliyuncs.com/helowin/oracle_11g:latest
registry.aliyuncs.com/helowin/oracle_11g:latest

3.查看镜像拉取情况


docker iamges

[root@localhost ~]# docker images
REPOSITORY                                             TAG          IMAGE ID       CREATED       SIZE
...
registry.aliyuncs.com/helowin/oracle_11g               latest       3fa112fd3642   5 years ago   6.85GB

4.创建并启动oracle容器

默认启动方式:
[root@localhost ~]# docker run -itd -p 1521:1521 --name oracle_11g --restart=always registry.aliyuncs.com/helowin/oracle_11g
持久化启动方式:
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

5.查看进程与启动状态

[root@localhost ~]# netstat -antulp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:1521            0.0.0.0:*               LISTEN      35497/docker-proxy
......
[root@localhost ~]# ss -antulp | grep :1521
tcp    LISTEN     0      128       *:1521                  *:*                   users:(("docker-proxy",pid=35497,fd=4))
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE                                      COMMAND                  CREATED        STATUS        PORTS                    NAMES
3edfba76f476   registry.aliyuncs.com/helowin/oracle_11g   "/bin/sh -c '/home/o…"   42 hours ago   Up 42 hours   0.0.0.0:1521->1521/tcp   oracle_11g

6.以退出不中断容器的方式进入容器

[root@localhost ~]# docker exec -it oracle_11g bash
[oracle@3edfba76f476 /]$

7.配置容器内环境变量

[root@localhost ~]# docker exec -it oracle_11g bash
1.切换为root用户
      # 密码默认为 helowin
[oracle@3edfba76f476 /]$ su root         
Password:                                
2.添加环境变量
[root@3edfba76f476 /]# vi /etc/profile      
...
     61 export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
     63 export ORACLE_SID=helowin
     65 export PATH=$ORACLE_HOME/bin:$PATH
...
3.使配置生效
[root@3edfba76f476 /]# source  /etc/profile
4.创建软链接
[root@3edfba76f476 /]# ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

8.操作oracle

1.切换回oracle用户
[root@3edfba76f476 /]# su - oracle
2.登录sqlplus
[oracle@3edfba76f476 ~]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 30 16:32:18 2021
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
SQL> conn /as sysdba;
Connected.
3.修改sys、system用户密码
SQL> alter user system identified by 123456;
SQL> alter user sys identified by 123456;
SQL> alter profile default limit PASSWORD_LIFE_TIME UNLIMITED;
4.创建用户
SQL> create user root identified by 123456;
SQL> grant connect,resource,dba to root;
SQL> show user;      # 查看当前用户
USER is "SYS"

注意:外部工具连接数据库时,需要配置开放防火墙相应端口。若是阿里云,则需要开放安全组。


相关文章
|
2月前
|
存储 Oracle 关系型数据库
服务器数据恢复—光纤存储上oracle数据库数据恢复案例
一台光纤服务器存储上有16块FC硬盘,上层部署了Oracle数据库。服务器存储前面板2个硬盘指示灯显示异常,存储映射到linux操作系统上的卷挂载不上,业务中断。 通过storage manager查看存储状态,发现逻辑卷状态失败。再查看物理磁盘状态,发现其中一块盘报告“警告”,硬盘指示灯显示异常的2块盘报告“失败”。 将当前存储的完整日志状态备份下来,解析备份出来的存储日志并获得了关于逻辑卷结构的部分信息。
kde
|
2月前
|
Kubernetes 关系型数据库 文件存储
手把手教你完成极空间 NAS Docker 镜像加速配置
本教程详细介绍了如何在极空间NAS上配置轩辕镜像加速器,以提升Docker镜像的下载速度与稳定性。内容涵盖账号注册、网络确认、加速器设置及验证方法,并提供常见问题解决方案,帮助用户高效完成容器化应用部署。
kde
685 1
|
5月前
|
Prometheus 监控 Cloud Native
Prometheus配置docker采集器
本文介绍了如何使用 Prometheus 监控 Docker 容器,涵盖环境准备、配置文件编写及服务启动等步骤。首先确保安装 Docker 和 Docker Compose,接着通过 `docker-compose.yml` 配置 Prometheus 和示例应用。创建 `prometheus.yml` 指定数据采集目标,最后用 `docker-compose up -d` 启动服务。文章还展示了甘特图和类图,帮助理解服务状态与关系,助力提升系统可靠性和可维护性。
180 11
kde
|
2月前
|
文件存储 数据安全/隐私保护 开发者
群晖NAS Docker镜像源加速配置教程
本教程介绍了群晖NAS用户如何通过配置轩辕镜像加速服务提升Docker镜像拉取速度。内容包括配置前准备、详细设置步骤及日常使用说明,帮助用户快速完成配置并享受高效稳定的镜像下载体验。
kde
1416 60
kde
|
Docker 容器 文件存储
飞牛fnOS Docker镜像加速配置全攻略
本文介绍了如何在飞牛fnOS中配置Docker镜像加速服务,通过设置轩辕镜像仓库加速器,提升镜像拉取速度与稳定性。内容涵盖配置前准备、加速源设置、首选加速源调整及使用指南,帮助用户高效完成镜像操作。
kde
846 56
|
2月前
|
Java 分布式数据库 Docker
使用Docker配置并连接HBase的Java API
本流程概要的解释了如何在Docker上配置并启动HBase服务,并通过Java API进行连接和操作表,不涉及具体的业务逻辑处理和数据模型设计,这些因应用而异需由开发者根据实际需求进行实现。
127 13
|
3月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
358 4
|
5月前
|
Ubuntu 关系型数据库 Linux
Linux数据库安装
本文介绍了在CentOS 8.0和Ubuntu 22.04系统上安装、配置和启动MariaDB数据库服务器的详细步骤。包括通过`yum`和`apt`包管理器安装MariaDB服务,启动并检查服务运行状态,设置root用户密码以及连接数据库的基本操作。此外,还展示了如何在Ubuntu上更新软件包列表、安装依赖项,并验证MariaDB的版本和运行状态。通过这些步骤,用户可以成功部署并初始化MariaDB环境,为后续数据库管理与应用开发奠定基础。
247 61
|
2月前
|
SQL XML Java
配置Spring框架以连接SQL Server数据库
最后,需要集成Spring配置到应用中,这通常在 `main`方法或者Spring Boot的应用配置类中通过加载XML配置或使用注解来实现。
234 0