自从安装了oracle11g后,每次开机特别慢,原因是oracle的几个服务我设置的是自动了,如果每次手动开启关闭又太麻烦,就上网找了一下资料,修改符合自己oracle的部分后,就可以了:
@echo off
echo 确定要启动Oracle吗?
pause
net start OracleOraDb11g_home1TNSListener
net start OracleServiceDATABASE
关闭代码如下:
@echo off
echo 确定要停止Oracle吗?
pause
net stop OracleOraDb11g_home1TNSListener
net stop OracleServiceDATABASE
对应的“DATABASE”是我建的数据库(实例)的名字,只要对监听器和服务进行操作就可以了,因此,只要修改成自己的oracle版本及其实例的就ok了,如果不清楚,可以直接去“【管理工具】-【服务】”中找一下,下图就是我安装oracle后服务中的两个服务,把上面批处理代码中修改和服务中一样就可以了。
上面是的这种方法属于强制关闭oracle服务,在Windows上面这样执行虽然没有什么影响,但我们DBA教我一种
更为规范的方式,不过执行过程时间要稍微长一些,因为要显示一些oracle服务的相关信息,代码如下
@echo off
lsnrctl start
oradim -startup -sid DATABASE
echo 已经启动实例DATABASE,按任意键退出!
pause>nul
开启后有oracle的一些信息,如下图:
停止服务时,同样有说明,代码如下:
@echo off
lsnrctl stop
oradim -shutdown -sid DATABASE
net stop OracleServiceDATABASE
echo 已经关闭实例DATABASE,按任意键退出!
pause>nul
同样的,需要修改数据库名即实例名,我自己的是“DATABASE”,标红色的地方要修改成自己的信息。
为什么说DBA专业啊,瞧下面的,如果你的oracle服务已经关闭,你再次执行停止服务的批处理时就会报相应的错误信息,这样你就知道是怎么回事了!如果启动后再次执行启动同样会有提示:已经开启了!
解决问题的方式有很多种,选择适合自己的就可以了!