Linux下Docker安装Oracle数据库

一,安装环境

linux版本:CentOS Linux release 7.7.1908 (Core)

docker版本:Docker version 19.03.5, build 633a0ea

二,拉取Oracle镜像及启动

拉取镜像

docker pull jaspeen/oracle-11g

创建宿主机oracle安装目录与数据目录

mkdir -p /server/oracle mkdir -p /server/dpdump

下载Oracle并上传至服务器/server/oracle目录下并解压(顺序解压1of2.zip、2of2.zip),Oracle下载地址:

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip

直接点击链接会要求登录,这里有Oracle账户的话建议登录后下载。如果没有Oracle账户,可以复制链接用迅雷下载下来,但是,下载下来的文件是.cgi格式,通过重命名改成linux.x64_11gR2_database_XXXof2.zip后即可。

创建容器

docker run -d --privileged -p 1521:1521 -v /server/oracle:/install -v /server/dpdump:/opt/oracle/dpdump --name=oracle11g jaspeen/oracle-11g

查看镜像

docker ps -a

运行容器

docker start oracle11g

我在运行容器的时候遇到了问题,执行docker start oracle11g没有反应,通过docker logs查看日志发现错误日志,Checking swap space: 0 MB available, 150 MB required. Failed。解决过程如下:

1.检查一下系统里有没有存在的 swap 文件,若为空则代表不存在,执行命令如下:

swapon -s

2.检查一下系统有没有足够的硬盘来设置swap,执行命令如下:

df -hal

3.创建swap文件

dd if=/dev/zero of=/swapfile bs=1024 count=512k

4.格式化swap文件

mkswap /swapfile

5.激活swap文件

swapon /swapfile

6.再次检查一下系统里有没有存在的 swap 文件

swapon -s

如果要机器重启的时候自动挂载 Swap ,那么还需要修改 fstab 配置。用 vim 打开 /etc/fstab 文件,在其最后添加如下一行:

/swapfile swap swap defaults 0 0

最后,赋予 Swap 文件适当的权限:

chown root:root /swapfile

chmod 0600 /swapfile

到此,再次执行docker start oracle11g运行容器了。

三,用户名/密码问题

Oracle跑起来后想验证一下可能又不知道用哪个用户?密码是什么?因为这些在上述操作中都没有设计,从网上找到的Oracle默认用户密码如下,但是我挨个试了试都没有登上。

用户名 / 密码 

 登录身份              

                 说明

sys/change_on_install

SYSDBA 或 SYSOPER

不能以 NORMAL 登录,可作为默认的系统管理员

system/manager

SYSDBA 或 NORMAL

不能以 SYSOPER 登录,可作为默认的系统管理员

sysman/oem_temp

 sysman 为 oms 的用户名

scott/tiger

NORMAL

普通用户

aqadm /aqadm

SYSDBA 或 NORMAL

高级队列管理员

Dbsnmp/dbsnmp

SYSDBA 或 NORMAL

复制管理员sysman 为 oms 的用户名

scott/tiger

NORMAL

普通用户

aqadm /aqadm

SYSDBA 或 NORMAL

高级队列管理员

Dbsnmp/dbsnmp

SYSDBA 或 NORMAL

复制管理员

这里我修改了system用户的密码,步骤如下:

1.进入容器内部

docker exec -it oracle11g bash

2.切换用户

su oracle

3.进入数据库

sqlplus / as sysdba

4.修改system用户的密码

alter user system identified by password

5.退出数据库

quit

6.再次进入数据库,输入system用户的用户名和密码进行连接测试

sqlplus

由于手动安装oracle数据库时,安装步骤纷繁复杂,耗时较长,对于个人想在日常开发中使用Oracle的人来说比较方便,安装过程及问题解决参考如下链接,感谢!

使用 docker 快速安装 oracle 11g - 幸福小聪 - 博客园

centos 安装oracle 报Checking swap space: 0 MB available, 150 MB required. Failed <<<< - 苍洱 - 博客园

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值