前言
记一次docker安装oracle 11g,以及遇到的坑
准备工作
- 磁盘空间预留多一些,否则无法启动,我这边预留了10G
- docker
- unzip解压工具,如果没有可以
yum install unzip
开始安装
-
拉取 jaspeen/oracle-11g,它可以帮助我们快速安装oracle
docker pull jaspeen/oracle-11g
-
下载oracle的两个文件
https://www.oracle.com/database/technologies/112010-linx8664soft.html
-
创建Oracle安装目录以及数据存放目录
mkdir /server/oracle/install/database mkdir /server/dpdump
-
将下载好的两个文件安装到database/下,解压并删除原文件,至于为什么这样放,是因为jaspeen/oracle-11g默认去/install/database/下执行
runInstaller
脚本。
-
启动oracle
docker run -d --privileged -p 1521:1521 -v /server/oracle:/install -v /server/dpdump:/opt/oracle/dpdump --name=orcl jaspeen/oracle-11g
- 配置用户
进入容器
[root@s201 ~]# docker exec -it orcl /bin/bash
[root@3ece463af491 /]# vi /etc/profile
在最后面加入
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
保存退出
[root@3ece463af491 /]# ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
[root@3ece463af491 /]# su oracle
[oracle@3ece463af491 /]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 5 08:47:43 2020
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>
接着创建用户
SQL> create user user1 identified user1;
授权
grant connect,resource,dba to user1;