实例启动命令为:
docker run -d -P -p 1521:1521 -p 8080:8080 --name 11gxe wnameless/oracle-xe-11g
或者
docker run -d -P -p 1521:1521 -p 8080:8080 --name 11gxe -v /oracle/data/:/u01/app/oracle wnameless/oracle-xe-11g
启动后,都可以用navicat连上,进入容器,用SQLplus也能进去.
但是当重启docker后(docker stop/start 11gxe),
用navicat连接时提示:
**ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
**
进入容器用SQLplus连接,提示:
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Process ID: 0
Session ID: 0 Serial number: 0
请问有人知道这是怎么回事吗?
重启docker后oracle是启动状态吗 不需要再次启动吗
试试这样:1、进入docker容器 su root 切换到root用户,
2、然后输入命令source /etc/profile加载配置,
3、然后su -- oracle切换回去输入sqlplus /nolog
个人感觉这是镜像问题。wnameless/oracle-xe-11g会有这个错,alexeiled/docker-oracle-xe-11g又不能挂载镜像。看来这玩意儿到底没有很好的支持。