侧边栏壁纸
博主头像
★街角晚灯★博主等级

博观而约取 厚积而薄发

  • 累计撰写 446 篇文章
  • 累计创建 182 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Docker Install Oracle

WinJay
2023-08-09 / 0 评论 / 0 点赞 / 44 阅读 / 6391 字 / 正在检测是否收录...
温馨提示:
文章发布较早,内容可能过时,阅读注意甄别。。。。

Docker Install Oracle

Docker安装Oracle

image-20230809143433604

https://10.17.0.16:5500/em/login

参考一:

参考二:

./buildContainerImage.sh -v 19.3.0 -t oracle19.3.0:or19c -e -i

image-20230423114559868

image-20230423114457761

3. 启动容器:安装数据库

注意:oracle 企业版的docker run的命令格式如下(XE版的都有所区别):

docker stop Oracle-19c
docker rm -f Oracle-19c

docker run -d \
    --name Oracle-19c \
    -p 1521:1521 \
    -p 5500:5500 \
    -e ORACLE_SID=lit \
    -e ORACLE_PDB=litdb \
    -e ORACLE_PWD=litsoft \
    -v `pwd`/OraData:/opt/oracle/oradata \
    oracle19.3.0:or19c


# -e ORACLE_SID:需要使用的Oracle数据库的SID。默认值是“ORCLCDB”,但这里我们使用“lit”
# -e ORACLE_PDB:需要使用的Oracle数据库PDB名称。这里我们使用“litdb”而不是默认的“ORCLPDB1”。

注意:```pwd`/OraData`` 目录权限一定要正确,在容器中oracle用户的uid是54321,所以要保证容器内的oracle用户有权限读写该目录。

  • 如创建oracle用户且uid是54321:
groupadd -g 1000 oinstall 
groupadd -g 1300 dba
groupadd -g 1301 oper 
useradd -u 54321 -g oinstall -G dba,oper -d /home/oracle -s /bin/bash -c "Oracle Software Owner" oracle 
echo "oracle" | passwd --stdin oracle

chown oracle:oinstall /oracle/oradata

  • 或者在宿主机上直接对此目录配置权限chmod -Rf 777 ./OraData

首次安装过程不是特别快,请耐心等待,后续再次启动时会快很多:

image-20230423143339321

image-20230423143405261

image-20230423143436679

  • 注:如果"DATABASE IS READY TO USE!"提示信息,表示数据库已成功安装了,如下图:

image-20230423143206307

验证测试

新开shell窗口

[root@RabbitMQ 005.Oracle]# docker exec -it Oracle-19c /bin/bash
bash-4.2$ pwd
/home/oracle
bash-4.2$ ls
setPassword.sh
bash-4.2$ ls -al
total 16
drwx------ 1 oracle oinstall  31 Apr 23 04:51 .
drwxr-xr-x 1 root   root      20 Apr 23 02:56 ..
-rw-r--r-- 1 oracle oinstall  18 Nov 23  2021 .bash_logout
-rw-r--r-- 1 oracle oinstall 193 Nov 23  2021 .bash_profile
-rw-r--r-- 1 oracle oinstall  69 Apr 23 03:25 .bashrc
-rw-r--r-- 1 oracle oinstall 172 Aug  9  2022 .kshrc
drwxr-x--- 2 oracle oinstall  40 Apr 23 04:51 .oracle_jre_usage
lrwxrwxrwx 1 root   root      26 Apr 23 02:56 setPassword.sh -> /opt/oracle/setPassword.sh
bash-4.2$ uname -a
Linux b166314fd7ce 3.10.0-1160.66.1.el7.x86_64 #1 SMP Wed May 18 16:02:34 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
bash-4.2$ cat /proc/version
Linux version 3.10.0-1160.66.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Wed May 18 16:02:34 UTC 2022
bash-4.2$ cat /etc/os-release
NAME="Oracle Linux Server"
VERSION="7.9"
ID="ol"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="7.9"
PRETTY_NAME="Oracle Linux Server 7.9"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:7:9:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"

ORACLE_BUGZILLA_PRODUCT="Oracle Linux 7"
ORACLE_BUGZILLA_PRODUCT_VERSION=7.9
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=7.9
bash-4.2$ echo #PATH

bash-4.2$ echo $HOME
/home/oracle
bash-4.2$ echo $ORACLE_HOME
/opt/oracle/product/19c/dbhome_1
bash-4.2$ env | grep ORACLE*
ORACLE_SID=LIT
ORACLE_BASE=/opt/oracle
ORACLE_PDB=litdb
ORACLE_PWD=litsoft
ORACLE_HOME=/opt/oracle/product/19c/dbhome_1

image-20230423145805572

image-20230423145852449

[root@docker dockerfiles]# docker exec -it oracle-19c /bin/bash
bash-4.2$ export ORACLE_SID=LIT
bash-4.2$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Sun Apr 23 06:25:03 2023
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> show con_name

CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs;

    CON_ID CON_NAME			  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
	 2 PDB$SEED			  READ ONLY  NO
	 3 LITDB			  READ WRITE NO
SQL>

image-20230423145921698

image-20230423145401667

image-20230423150007139

Oracle Enterprise Manager (EM) — 登录并开始工作

Oracle Enterprise Manager是 Oracle 的数据库监控和管理工具。Oracle 随我们下载的 docker 二进制文件一起提供Express 版本。

因为我们已经映射了端口 5500(这是 EM 控制台的默认端口),所以我们可以登录它。在浏览器中打开一个新窗口或选项卡,并提供地址:

https://localhost:5500/em/login

image-20230423152334280

image-20230423152015982

image-20230809143227785

0

评论区