docker安装oracle11g(linux环境)

拉取oracle_11g镜像

# aliyun镜像,速度快(前面带网址,表示去指定网站拉取镜像)
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 

docker运行容器

docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker start oracle11g; # 这一步如果是刚创建不需要 因为oracle服务已经起来了

进入容器进行配置

进入容器,切换到root用户:

docker exec -it oracle11g /bin/bash # 进入oracle11g容器
su root  #密码:helowin

配置环境变量, vi命令编辑/etc/profile, 末尾加上如下:

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLEHOME/bin:PATH

创建软连接,并用oracle用户登录:

# 创建软链接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
# 切换到oracle用户(别忘了中间的 横杠)
su - oracle

sqlplus修改sys、system用户密码创建用户

sqlplus /nolog  # 
conn / as sysdba  # 以dba身份登录
# 修改用户system、sys用户的密码 
alter user system identified by system; #这里配置帐号密码相同,可酌情更改  
alter user sys identified by sys;   #同上
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

创建用户并授权:

create user test identified by test;
grant connect,resource,dba to test; # 加几个权限

注:
DBA:该角色具有数据库所有的权限。
CONNECT:该角色具有连接数据库的权限,和create session的权限一样。
RESOURCE:该角色是应用程序开发角色,具有如下权限
在这里插入图片描述
回收权限的方法,例:

revoke dba from test;

用连接工具登录

用工具连接下看好了么,如果连不上,可能是服务名没写对,注意不一定是orcl。
oracle容器内查找 tnsnames.ora 文件:

find / -name tnsnames.ora  # 根目录下查找 tnsnames.ora 文件的位置

结果如下(不同的人可能结果不同):

/var/lib/docker/overlay2/72428d81a2cd327667b2e9e2ad1af73f885040bd81cd06312cbd4a8139b4a1b8/merged/home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/samples/tnsnames.ora
/var/lib/docker/overlay2/72428d81a2cd327667b2e9e2ad1af73f885040bd81cd06312cbd4a8139b4a1b8/merged/home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/tnsnames.ora
/var/lib/docker/overlay2/5c148837473e898e8bd1c845d364df2183a635d9aa25b5c0b419f177c50e067a/diff/home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/samples/tnsnames.ora
/var/lib/docker/overlay2/5c148837473e898e8bd1c845d364df2183a635d9aa25b5c0b419f177c50e067a/diff/home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/tnsnames.ora

查看tnsnames.ora的内容:

cat /var/lib/docker/overlay2/5c148837473e898e8bd1c845d364df2183a635d9aa25b5c0b419f177c50e067a/diff/home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/tnsnames.ora

在这里插入图片描述
注意如图的service_name,就是我们连接的时候该填的,如图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值