软件开机启动项在哪里设置(设置启动项实操步骤)

软件开机启动项在哪里设置(设置启动项实操步骤)

【前言】

《用户:单台服务器部署多MySQL实例,咋弄?》

上述一文中有讲述MySQL如何设置开机自启动,这里简要回顾下步骤:

1. MySQL配置自启动

#将MySQL的启动服务添加到系统服务中,设置开机自启动:(chkconfig 命令redhat系统的)

创建软连接:

[root@ethan-testdb ~]#ln -s/MySQLsoft/MySQL/usr/local/MySQL

[root@ethan-testdb ~]#pwd

/usr/local/MySQL/support-files

[root@ethan-testdb ~]#cp MySQL.server /etc/init.d/MySQLd

[root@ethan-testdb ~]#/etc/init.d/MySQLd

startStarting MySQL.. SUCCESS!

赋予执行权限:

[root@ethan-testdb ~]#chmod x /etc/init.d/MySQLd

添加服务:

[root@ethan-testdb ~]#chkconfig –add MySQLd

显示服务列表:

[root@ethan-testdb ~]#chkconfig –list

如果看到MySQL的服务,并且3,4,5都是on的话则成功,如果是off,则使用如下命令:

[root@ethan-testdb ~]#chkconfig –level 345 MySQLdon

至此,MySQL开机自启动设置成功。

一个问题:

那Oracle的开机自启动又如何做?

答案是:

dbstart,dbstart为开机自启动脚本,让系统开机就去执行dbstart脚本文件,它会去读oratab文件,读到Y就会把对应的实例开机自启动。

配置步骤:

安装好Oracle的Linux系统(Red HatEnterprise Linux 7.2,Oracle 12c)

1、查看ORACLE_HOME是否设置

$ echo $ORACLE_HOME/u01/app/oracle/product/12.2.0/dbhome_1

在linux上安装好oracle之后,第一次使用dbstart命令可能会报如下错误:

[oracle@ethandb home_1]$ cd bin/[oracle@ethan bin]$ ll | grep dbs-rwxr-x—. 1 oracle oinstall 6088 1月 1 2000 dbshut-rwxr-x—. 1 oracle oinstall 13892 12月 11 16:01 dbstart

首次执行时,报错如下:

[oracle@ethan bin]$ dbstartORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener Usage: /oracle/app/oracle/product/12.2.1/dbhome_1/

错误提示:ORACLE_HOME_LISTNER 没有设置

ORACLE_HOME_LISTNER=/oracle/app/oracle/product/12.2.1/dbhome_1/

注意:$ORACLE_HOME环境设置正确

dbca建库时都会自动创建/etc/oratab文件

[oracle@ethan bin]# vi /etc/oratab

# Entries are of the form:

# $ORACLE_SID:$ORACLE_HOME:<N|Y>:

将“ethanDB:/oracle/app/oracle/product/12.2.1/dbhome_1/:N”,

改为“ethanDB:/oracle/app/oracle/product/12.2.1/dbhome_1/:Y”。

修改完成后,保存退出

#vi /etc/rc.d/rc.local —末尾添加:su – oracle -lc “/oracle/app/oracle/product/12.2.1/dbhome_1/bin/lsnrctl start”su – oracle -lc /oracle/app/oracle/product/12.2.1/dbhome_1/bin/dbstart

如果服务器中有多个实例,监听启动时需指定实例

su – oracle -lc “/oracle/app/oracle/product/12.2.1/dbhome_1/bin/lsnrctl start ethanDB”su – oracle -lc “/oracle/app/oracle/product/12.2.1/dbhome_1/bin/lsnrctl start dannielDB”su-oracle-lc/oracle/app/oracle/product/12.2.1/dbhome_1/bin/dbstart

注意:命令中-c代表执行脚本,脚本lsnrctl中启动配置的监听,监听写多个启动;实例用一个dbstart命令去启动,它会去读oratab文件,读到Y就会把对应的实例开机自启动

4、重启主机,查看数据库和监听是自启动

简要复习下相关命令:

linux下设置实例自启动脚本:

oratab:实例是否自启动的注册信息

dbstart:开机启动脚本文件会读取oratab信息

rc.local:开机后立即要做的文件

–“启动监听”lsnrctl start

–“启动数据库实例”dbstart

–“关闭数据库实例”dbshut

–“关闭监听”lsnrctl stop

【结语】

1.本文详细介绍了Mysql,Oracle开机自启动的实操步骤,具有强借鉴性;

2.通常我们不会设置开机自启动,原因为:库在正常情况下,是方便了常规启停管理;但我们在部署生产数据库架构时,高可用性是必配项,如果某台库有异常,这时会进行人工排查,自启动服务有时会干扰DBA的操作和判断。故生产环境下,不建议配置开机自启动;且服务器的启停发生频度低,一般会严格走变更流程,还是踏踏实实的按照库正常操作的变更操作走方妥。

3.以上两点为自家感悟,如有不对,欢迎指正。

4. 再说点自己最近一个感悟,正巧看到一句,可表当下心态:

既往不恋,当下不杂,未来不迎(曾国藩)

另看到作家马德的一句,深表赞同:

“这个世界,看似周遭复杂,各色人等,泥沙俱下,本质上,还是你一个人的世界。你若澄澈,世界就干净,你若简单,世界就难以复杂。”

发表评论

登录后才能评论