一、如何启动Oracle数据库实例和开启Listener服务
#先进入到docker的oracle容器中
docker exec -it oracle11g bash
#切换到oracle用户,注意 ‘-’ 这个一定不要忘了
su - oracle
#打开监听
lsnrctl start
#进入到sqlplus
sqlplus /nolog
#连接到sysdba
conn /as sysdba
#启动数据库实例
startup
#关闭数据库实例
shutdown immediate
#关闭监听
lsnrctl stop
二、如何使数据库实例和linux系统一起启动
在/etc/rc.d/rc.local中加入如下语句即可实现同系统启动实例:(docker同样)
su - oracle -c "lsnrctl start"
su - oracle -c "dbstart"
如果你是linux下安装的,只需要执行上面的步骤即可,如果你是docker安装的,则需要继续往下看。
1、设置docker服务开机启动
- 查看已启动的服务
systemctl list-units --type=service
- 查看是否设置开机启动
systemctl list-unit-files | grep enable
- 设置开机启动
systemctl enable docker.service
- 关闭开机启动
systemctl disable docker.service
2、设置docker内容器自动启动
- 启动时加–restart=always
docker run -d -p 3306:3306 --restart=always --name mysql -e MYSQL_ROOT_PASSWORD=root mysql:5.7
Flag Description
no 不自动重启容器. (默认value)
on-failure 容器发生error而退出(容器退出状态不为0)重启容器
unless-stopped 在容器已经stop掉或Docker stoped/restarted的时候才重启容器
always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器
- 如果已经在Docker中设置过容器运行启动
#如果已经启动的项目,则使用update更新:
docker update --restart=always mysql
docker update --restart=always oracle11g
网友评论