Oracle 11g数据库随系统自动启动与关闭的设置方法(2)

# chkconfig: 2345 99 10 了。这样当这个命令被执行的时候,会去oracle文件中寻找这行注释,并解析这行注释,根据解析结果分别在/etc/rc.d/rc2.d;/etc/rc.d/rc3.d;/etc/rc.d/rc4.d;/etc/rc.d/rc5.d中创建符号连接文件S99oracle文件,这个文件是系统启动时要执行的,其实这个文件是指向/etc/init.d/oracle的,启动的时候系统向这个文件发送一个start参数,也就执行了oracle文件中的start分支了。

另外还会在/etc/rc.d/rc0.d;/etc/rc.d/rc1.d;/etc/rc.d/rc6.d中创建K10oracle文件,这个文件时系统关闭时要执行的,其实这个文件也是指向/etc/init.d/oracle的,关闭的时候系统向这个文件发送一个stop参数,也就执行了oracle文件中的stop分支了。

我想你应该明白# chkconfig: 2345 99 10 中这些数字的含义了吧:

指出2,3,4,5级别启动这个服务,99是在相应的/etc/rc.d/rcN.d(N为前面指定的级别,这里是2345)目录下生成的链接文件的序号(启动优先级别)S99oracle,10为在除前面指出的级别对应的/etc/rc.d/rcN.d(N为除2345之外的级别)目录生成的链接文件的序号(服务停止的优先级别)K10oracle。至于为什么在这些目录中创建文件和文件的命名规则,这就要您对Linux的系统启动流程有一个熟悉的了解了,在这就不详谈了。

其二:若您想尝试一下手动创建符号连接文件的乐趣,请执行如下命令:

代码如下:

#su - root

ln -s /etc/init.d/oracle/etc/rc.d/rc2.d/S99oracle

ln -s /etc/init.d/oracle/etc/rc.d/rc3.d/S99oracle

ln -s /etc/init.d/oracle/etc/rc.d/rc4.d/S99oracle

ln -s /etc/init.d/oracle/etc/rc.d/rc5.d/S99oracle

ln -s /etc/init.d/oracle/etc/rc.d/rc0.d/K10oracle

ln -s /etc/init.d/oracle/etc/rc.d/rc1.d/K10oracle

ln -s /etc/init.d/oracle/etc/rc.d/rc6.d/K10oracle

其实手动这样操作作用效果和执行chkconfig --add oracle是一样的。

到此,所有设置就完成了,下面进行一下测试:

#cd /etc/init.d

sh oracle start 或者service oracle start

执行后,看看/var/log目录下的oraclelog文件,里面是不是有脚本的启动分支输出信息呢?

sh oracle stop或者service oracle stop

执行后,看看/var/log目录下的oraclelog文件,里面是不是有脚本的关闭分支输出信息呢?

若看到信息,表示您设置成功了。若没有,请再仔细设置一遍,并注意文件的权限问题。 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/9bd294e4b87900200d871da0e2629434.html