Mac下docker安装oracle 12c

1、使用dockerID登录docker hub,如果没有需要注册

2、访问oracle image地址:https://store.docker.com/images/oracle-database-enterprise-edition

3、填写信息后,可以产看安装说明。

4、登陆docker后,下载镜像

docker login
docker pull store/oracle/database-enterprise:12.2.0.1

5、创建容器

mkdir ~/orcl
docker run -d --name oracle -p 1521:1521 -p 5500:5500 -v ~/orcl:/ORCL store/oracle/database-enterprise:12.2.0.1

6、产看日志是否成功

docker logs -f oracle

7、在安装过程中,遇到http_proxy的错误

Configure DB as oracle user
Setup Database directories ...
Error 46 initializing SQL*Plus
HTTP proxy setting has incorrect value
SP2-1502: The HTTP proxy server specified by http_proxy is not accessible
update password

Enter password for SYS: 
create pdb : ORCLPDB1
Error 46 initializing SQL*Plus
HTTP proxy setting has incorrect value
SP2-1502: The HTTP proxy server specified by http_proxy is not accessible
Reset Database parameters
Error 46 initializing SQL*Plus
HTTP proxy setting has incorrect value
SP2-1502: The HTTP proxy server specified by http_proxy is not accessible

解决方法如下,在环境变量中设置http_proxy为空

创建~/orcl/DB_ENV文件,内容如下

DB_SID=ORCLCDB
DB_DOMAIN=localdomain
DB_MEMORY=4G
DB_PDB=ORCLPDB1
http_proxy=

注意最后一行,http_proxy为空

Oracle数据库服务器容器还提供用于启动容器的自定义配置参数。所有的自定义配置参数都是可选的。

DB_SID
该参数更改数据库的ORACLE_SID。默认值设置为ORCLCDB。

DB_PDB
该参数修改PDB的名称。默认值设置为ORCLPDB1。

DB_MEMORY
此参数设置Oracle服务器的内存要求。此值确定要为SGA和PGA分配的内存量。默认值设置为2GB。

DB_DOMAIN
该参数设置要用于数据库服务器的域。默认值是localdomain。

确保tnsnames.ora中的配置跟DB_SID,DB_PDB和DB_DOMAIN一致。

8、删除目录(不删除可能会有其他的问题)

docker stop oracle
docker rm  oracle
rm -rf ~/orcl
mkdir ~/orcl

9、利用环境变量重新创建容器

docker run -d --name oracle  -p 1521:1521 -p 5500:5500 -v  /Users/apple/orcl:/ORCL --env-file /Users/apple/orcl/DB_ENV store/oracle/database-enterprise:12.2.0.1

10、启动成功,状态为healthy

docker ps
CONTAINER ID        IMAGE                                       COMMAND                  CREATED             STATUS                    PORTS                                            NAMES
bc5b66e114fb        store/oracle/database-enterprise:12.2.0.1   "/bin/sh -c '/bin/..."   33 minutes ago      Up 33 minutes (healthy)   0.0.0.0:1521->1521/tcp, 0.0.0.0:5500->5500/tcp   oracle

11、修改sys默认密码

docker exec -it oracle bash
sqlplus / as sysdba
alter user sys identified by my_password

注:sys默认密码为 Oradoc_db1

猜你喜欢

转载自my.oschina.net/u/234661/blog/1788570