当前位置:首页 > 技术知识 > 正文内容

Docker安装Oracle 11g 数据库过程详解

maynowei8个月前 (08-03)技术知识149

1、查看docker 版本

[root@node3 ~]# docker version
Client:
 Version:           18.09.6
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        481bc77156
 Built:             Sat May  4 02:34:58 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          18.09.6
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.8
  Git commit:       481bc77
  Built:            Sat May  4 02:02:43 2019
  OS/Arch:          linux/amd64
  Experimental:     false

2、 操作系统切换到root用户

su root

3、拉取oracle镜像(oracle 11.0.2 64bit 企业版 实例名: helowin)

  • Oracle主要在Docker基础上安装,安装环境注意空间和内存,Oracle是一个非常庞大的一个软件,最低配置要2G以上,硬盘要30G以上更好,由于镜像都有好6.8个G.
  • 登录阿里容器镜像服务平台,找到镜像中心-->镜像搜索,输入相应的镜像名称找到合适的镜像.建议使用网易镜像或阿里镜像网站
  • 这里以oracle 11.0.2 64bit 企业版 实例名: helowin为例子进行安装详解
  • https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

4、创建并启动容器(映射本地端口1521)

  • 默认数据库实例名为:helowin
docker run \
--privileged \
--restart=always \
--name oracle_11g \
-v /usr/local/oracle/app/oracle/oradata/:/home/oracle/app/oracle/flash_recovery_area/ \
-p 1521:1521 \
-d registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

4.1参数说明



5、进入docker的oracle_11g 容器

docker exec -it 容器ID /bin/bash
或
docker exec -it 容器名称 /bin/bash

6、加载环境变量

source /home/oracle/.bash_profile

7、登录sqlplus

sqlplus /nolog
connect /as sysdba

8、创建用户&分配权限

  • 创建一个用户为oracle,密码为oracle#123
create user oracle identified by oracle#123;
  • 修改用户system的密码标识
SQL> alter user system identified by system;
alter user system identified by 123456;
  • 给oracle这个用户授权
grant connect,resource,dba to oracle;

9、查看数据库sid(实例名)

SQL> select instance from v$thread;


10、sqlplus清屏命令

clear SCR  

或
clear screen

或
clea scre

11、重启数据库,重启监听

sqlplus / as sysdba
SQL> shutdown immediate --"关闭数据库实例"
SQL> startup --"启动数据库实例"
SQL>exit

$ lsnrctl stop listener    -停止名为listener的监听服务
$ lsnrctl start listener   -启动名为listener的监听服务
$ lsnrctl reload listener  -重新加载名为listener的监听服务

12、查看环境变量

cat /home/oracle/.bash_profile

看到此ORACLE_SID=helowin表示数据库的实例名称


13、使用连接工具进行验证

  • 这里可以根据自己使用客户端的习惯进行验证即可。如:PLSQL Developer、JetBrains DataGrip、Navicat Premium、等.
  • JetBrains DataGrip验证结果

相关文章

Flutter 之 ListView(flutter框架)

在 Flutter 中,ListView 可以沿一个方向(垂直或水平方向)来排列其所有子 Widget,常被用于需要展示一组连续视图元素的场景ListView 构造方法ListView:仅适用于列表中...

C++26中同步与原子操作新变化(c++ 同步)

引言随着多核处理器和并发编程的普及,C++26进一步增强了对同步与原子操作的支持,为开发者提供了更高效、更安全的工具来应对多线程编程中的数据竞争与同步挑战。自C++11引入原子操作以来,C++标准库在...

Oracle标准化部署手册(oracle19c客户端)

很久之前写过一篇11g的windows安装手册, 这次是19c的windows安装手册,面向没有数据库安装部署经验的开发人员或想学习数据库的新手。希望能给想从事dba的入门人员小小的帮助。 毕竟每个高...

ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务

早上同事用PL/SQL连接虚拟机中的Oracle数据库,发现又报了“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误,帮其解决后,发现很多人遇到过这样的问题,因此写着这里。也...

Oracle 11g安装教程完整版(oracle 11g 安装教程)

由于工作需要,将安装的经验分享给大家。第一步:首先准备安装文件包:Oralce 11.2.0.4 64bit和plsqldev1405x64如图所示:第二步:将2个文件解压到同一个目录,如图所示:第三...

Think in Mingdao——人人都是全栈工程师

文/明道云销售部顾问 文静编辑/蒋礼轩一、引言在软件开发领域,有这样一类"Think"系的书籍被广大程序员们奉为经典,如:Think in C++、Think in C#、Think...