想研究一下Oracle数据库,发现安装Oracle太麻烦了,所以想省事儿,使用docker中的Oracle作为练习。

使用 sudo docker search Oracle 命令搜索Oracle数据库镜像文件,这里发现已经有人发布了相关镜像,链接:https://hub.docker.com/r/sath89/oracle-12c/,直接按照说明,使用pull命令下载镜像。下载完成后如下所示:
这里写图片描述

下载镜像之后,我们 需要参照作者的说明启动数据库,第一次启动需要对数据库进行配置,首先使用命令 sudo docker run -d -p 8080:8080 -p 1521:1521 sath89/oracle-12c 启动镜像,并映射相关端口,这里是8080和1521端口
这里写图片描述
这是我们可以去查看docker的日志文件:
这里写图片描述
当我们输入docker logs -f 镜像id后,会输出这个镜像操作的日志文件,等待5分钟左右,Oracle会启动成功,并且没有出现报错。
这是,我们可以进入镜像的bash对数据库进行进一步的操作:
这里写图片描述
如图所示,我们可以看到,使用docker的exec命令进入镜像的bash,并且查看了镜像启动的端口信息。
查看Oracle的service_names,转到Oracle的HOME目录下:
Cd $ORACLE_HOME
使用dba账户登录Oracle
这里写代码片
到此为止,说明Oracle的docker镜像安装启动完毕,接下来配置Oracle的客户端。
下载pl/sql客户端:https://www.allroundautomations.com/bodyplsqldevreg.html
下载Oracle客户端:http://www.oracle.com/technetwork/topics/winx64soft-089540.html
安装pl/sql客户端,这个不需要特别配置,接下来配置Oracle客户端.
将下载的Oracle客户端文件解压,并放在特定目录下,这里以D盘为例。
1、新建ORACLE_HOME环境变量:
这里写图片描述
2、新建NLS_LANG环境变量,将值设置为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
这里写图片描述

3、新建TNS_ADMIN环境变量,将值设置为admin目录,这个admin目录需要自己在Oracle客户端的目录下自己创建。
这里写图片描述
然后将D:\oraclient目录添加到path环境变量下。
接下来,在新建的admin目录下创建一个tnsnames.ora的文件,写入文件配置:

MyDB=
    (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST= 192.168.83.135)(PORT = 1521))
        (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = xe)
        )
    )

host是服务器地址,port是Oracle端口,这里需要注意SERVICE_NAME,即是我们在前面查看到的service_name的值。
然后打开plsql客户端
这里写图片描述
填写Oracle用户名密码进行登录,登录成功就可以进行数据库操作了。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐