Docker 部署 oracle(基于 win10)

Docker 部署 oracle(基于 win10)

一、电脑配置

1.1 内存

至少 8G 内存;(保证 Oracle 正常运行的配置要求)

1.2 硬盘

C 盘至少保持 20G;(或修改 docker 的镜像文件存储位置到其他盘:见文档《 》)

1.3 注意事项

在使用 docker 部署 oracle 的时候,尽量保持其他应用关闭,不占用内存。

二、安装 docker

2.1 参考地址

https://www.runoob.com/docker/windows-docker-install.html

2.2 注意事项

基于 windows 安装,win7、win8 和 win10 安装方法不一样(请自行 Baidu),win10 现在 Docker 有专门的 Win10 专业版系统的安装包,需要开启 Hyper-V。

三、拉取 oracle 镜像

3.1docker 编辑地方

Docker 在 win10 上面是用 powershell 编辑,注意:用管理员身份打开。

image.png

3.2 拉取镜像

3.2.1 执行命令

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

image.png

3.2.2 查看镜像

 下载完成后, 查看镜像:docker images

image.png
 

3.2.3 注意事项

1. 尽量在网络环境好的情况下进行镜像下载。

2. 下载时间可能会比较长,镜像大概有 6.8G。

四、创建容器

4.1 执行命令

Docker run -d -p 1521:1521 –name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
image.png

4.2 查看容器

查看容器命令:docker ps ;(查看正在运行的容器)

docker ps -a ; (查看全部的容器)

image.png

image.png

4.3 注意事项   

命令后面的地址一定要是你下载的镜像地址也就是你拉取镜像名字,否则会出现名字已存在等问题!如果创建成功能会返回容器 id。

五、配置 oracle

5.1 启动容器

执行命令:docker start oracle11g

image.png

5.2 配置镜像

5.2.1 进入 oracle 镜像

进入 oracle 配置镜像命令:docker exec -it oracle11g bash
 
image.png

5.3 切换 root 用户

命令:su root

密码:helowin
image.png

5.4 配置 profile 文件

1. 编辑命令:vi /etc/profile;

image.png

2. 进入文档编辑模式命令:ALT+I 键

image.png

3. 复制环境变量:

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2

export ORACLE_SID=helowin

export PATH=$ORACLE_HOME/bin:$PATH

(注意:将该环境变量放在 profile 文档最后面)

image.png

4. 保存并且退出:

首先按 Esc 键退出,然后输入“:”回车,最后输入“wq”回车。

image.png

5.5 创建软连接

执行命令:ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

image.png

5.6 切换 oracle 用户

命令:su – oracle

image.png

(注意:一定要写中间的内条 “-“ 必须要,否则软连接无效)

5.7 登录 sqlplus

5.7.1 登录 sqlplus

执行命令:

1.sqlplus /nolog

2.conn /as sysdba

image.png

5.7.2 修改用户名和密码

执行命令:

alter user system identified by system;

alter user sys identified by sys;

image.png

5.7.3 用 plssql 连接测试

用户名:system

密码:system

Database:127.0.0.1:1521/helowinXDB

image.png

5.3 创建用户

5.3.1 创建表空间

执行命令:

CREATE TABLESPACE MESTAR_DATA DATAFILE ‘\home\oracle\app\oracle\MESTAR_DATA.DBF’ SIZE 1G AUTOEXTEND ON;

CREATE TABLESPACE MESTAR_INDEX DATAFILE ‘\home\oracle\app\oracle\MESTAR_INDEX.DBF’ SIZE 1G AUTOEXTEND ON;

image.png

5.3.2 创建用户

CREATE USER unimax4 IDENTIFIED BY unimax4 DEFAULT TABLESPACE MESTAR_INDEX;

image.png

5.3.3 用户授权

GRANT CREATE VIEW, CREATE DATABASE LINK, UNLIMITED TABLESPACE, CONNECT, RESOURCE TO unimax4;

image.png

5.3.4 导库

适用导入方式:imp;

导入语句:

imp UNIMAX4/UNIMAX4@10.1.1.112:1521/helowinXDB  file=d:\UNIMAX4.dmp  full=y ignore=y

(“UNIMAX4/UNIMAX4@10.1.1.112:1521/helowinXDB”:远程数据库用户名 / 密码 @地址:端口号 / 服务名 ,file=“dmp 地址” )

5.3.4.1 导库注意事项
5.3.4.1-1

需要在装过 oracle 的电脑上面运行导库语句;

5.3.4.1-2 错误点
5.3.4.1-2.1 监听问题

image.png

1. 退出 plsql 模式:

用“exit”命令;

image.png

2. 修改 listener.ora 文件

image.png

image.png

修改后:

image.png

5.3.4.1-2.1 用户权限问题

image.png

  1. 修改用户权限,将 unimax4 修改成 dba 权限:

命令:grant dba to unimax4;

image.png

2. 开始导入:
image.png

5.3.5 连接 unimax4

image.png

表示连接成功。