前言
最近实习导师要求部署公司项目,其中需要使用Oracle。在经历了window的部署之后他竟然神奇的卡了3小时进度条!无奈之下只能取消,结果可想而知,我还需要卸载我的window版本的Oracle!!
接下来由我为大家带来使用Docker安装Oracle。如果不熟悉Docker的就看看如何使用Docker哦!将来有机会我也会写一篇Docker的简单使用!
1、下载镜像
第一步是下载我们的镜像,也就是Oracle的镜像,我们需要从远程仓库中pull到本地Docker中
docker pull truevoly/oracle-12c
在经历过漫长的下载之后,使用Docker images查看镜像是否下载 成功
在这里可以看到,我们的Oracle已经下载成功了
2、使用Oracle
在确认镜像已经下载成功之后,我们已经可以使用Oracle了
docker run -d -p 1521:1521 --name oracle truevoly/oracle-12c
简单介绍一下:
- -d:表示后台启动
- -p:端口映射 把oracle的1521端口映射到本机的1521端口
- --name 其别名
启动成功后将会返回一段id,这段id就是Oracle的容器id,我们即可对此id做许多事情
然后进行docker ps 可以查看当前正在运行的容器
可以看到,Oracle以及运行成功了!
3、更改Oracle配置
当看到容器id时,容器已经可以启动成功了,现在我们通过容器id进入容器内部,更改Oracle配置
docker exec -it 5727bd997b59 /bin/bash
因为我这边的容器Id是5727bd997b59 所以大家需要更改为自己所docker ps出来的容器id,进入之后即可发现我们的定位已经更改了,现在已经在容器内部了
接下来需要更改Oracle的一些配置,使我们可以使用SqlPlus。
vi /etc/profile
使用vi 进入profile后使用 vi命令来更改配置文件
简单使用vi
- 键盘上按下 i 进入编辑模式-插入操作
- 键盘上按下Esc退出编辑模式
- 键盘上输入:进入命令行模式
- 命令行模式键入wq进行保存退出操作
进入到profile后需要在文件最底下添加一下3行配置
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
保存后即可。
4、进入SqlPlus
使用su 转入oracle账号,然后进入sqlplus,成功后显示sql
root@5727bd997b59:/# su oracle
oracle@5727bd997b59:/$ $ORACLE_HOME/bin/sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on Wed Sep 21 09:23:57 2022
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production
SQL>
然后修改直接system和sys的密码
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Profile altered.
SQL> alter user SYSTEM account unlock;
User altered.
SQL> alter user system identified by rootadmin;
User altered.
SQL> alter user sys identified by rootadmin;
User altered.
然后进入navicat进行查看 填入对应的信息用户名密码为刚刚自己更改的那个
服务名需要到sql下使用select命令即可查看直接Oracle的服务名
SQL> select name from v$database;
NAME
---------
XE
填写完毕测试连接,连接成功!
总结
使用Docker能极大快速的部署我们的所需要的运行环境(因为踩过Oracle-window的坑),本篇文章中给大家带来嘞在Linux环境下部署Docker的Oracle,希望我所写的内容能给大家带来帮助,也希望大佬们能多多指正,谢谢!