【MySql】开机自动启动mysql服务

设置开机启动mysql

作为服务器使用的linux 会执行/etc/rc.d/rc3.d 目录下的所有脚本

[root@rac4 rc3.d]# ll S*

lrwxrwxrwx 1 root root 23 09-08 03:15 S00microcode_ctl -> ../init.d/microcode_ctl

lrwxrwxrwx 1 root root 22 09-08 03:14 S02lvm2-monitor -> ../init.d/lvm2-monitor

....省略....

lrwxrwxrwx 1 root root 11 09-08 03:14 S99local -> ../rc.local

lrwxrwxrwx 1 root root 21 09-08 03:18 S99modclusterd -> ../init.d/modclusterd

lrwxrwxrwx 1 root root 15 09-08 03:18 S99ricci -> ../init.d/ricci

lrwxrwxrwx 1 root root 16 09-08 03:15 S99smartd -> ../init.d/smartd

[root@rac4 rc3.d]# 

首先了解一下在rc3.d下面的脚本的执行规则:

1 如果以字母S开头,执行时Linux会给它传递一个start参数;

2 如果以字母K开头,则会传递stop参数;

3 字母后面的数字,表示这个脚本的启动顺序;

知道了基本原理,接下来就是

1 编写脚本

cat automysql.sh 

#!/bin/bash

#created by yangql @2011-12-30 

#for auto start mysql service 

case "$1" in

'start')

/usr/bin/mysqld_safe --defaults-file=/etc/my.cnf &

;;

'stop')

/usr/bin/mysqladmin -uroot  -h127.0.0.1 -P3306 shutdown

;;

'restart')

/usr/bin/mysqladmin -uroot  -h127.0.0.1 -P3306 shutdown

/usr/bin/mysqld_safe --defaults-file=/etc/my.cnf &

;;

esac

exit 0

2 赋予权限

chmod 755 automysql.sh

3 将脚本设置为软链接,这样便于维护,启动和关闭只需要一个 automysql.sh 脚本就可以了!

[root@rac4 rc3.d]# ln -s /etc/init.d/automysql.sh  /etc/rc.d/rc3.d/S64mysql

[root@rac4 rc3.d]# ln -s /etc/init.d/automysql.sh  /etc/rc.d/rc3.d/K20mysql

4 测试:

[root@rac4 rc3.d]# reboot

Broadcast message from root (pts/1) (Fri Dec 30 20:01:03 2011):

The system is going down for reboot NOW!

[root@rac4 rc3.d]# 

Last login: Fri Dec 30 19:44:18 2011 from 10.13.90.1

[root@rac4 ~]# service mysql status

MySQL running (3138)                                       [确定]

5 如果一个服务器上有多个端口对应的mysql数据库服务,可以这样写:

#! /bin/bash

case "$1" in

'start')

/usr/bin/mysqld_safe --defaults-file=/etc/my3301.cnf &

/usr/bin/mysqld_safe --defaults-file=/etc/my3302.cnf &

/usr/bin/mysqld_safe --defaults-file=/etc/my5001.cnf &

/usr/bin/mysqld_safe --defaults-file=/etc/my5002.cnf &

;;

'stop')

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P3301 shutdown

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P3302 shutdown

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P5001 shutdown

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P5002 shutdown

;;

'restart')

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P3301 shutdown

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P3302 shutdown

/usr/bin/mysqld_safe --defaults-file=/etc/my3301.cnf &

/usr/bin/mysqld_safe --defaults-file=/etc/my3302.cnf &

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P5001 shutdown

/usr/bin/mysqladmin -uroot -p123456  -h127.0.0.1 -P5002 shutdown

/usr/bin/mysqld_safe --defaults-file=/etc/my5001.cnf &

/usr/bin/mysqld_safe --defaults-file=/etc/my5002.cnf &

;;

esac

exit 0

小结:

 这里介绍一个配置流程,所编写的脚本不具有健壮性!需要进一步修改,切勿使用在生产环境!!

时间: 2024-09-19 10:12:07

【MySql】开机自动启动mysql服务的相关文章

linux中mysql开机自动启动3种方法

  开机启动主要是把启动命令加入到linux的启动服务中去就可以实现了,具体给各位整理两段代码. 第一种手工简单加入即可实现开机自动启动mysql,后面是没事做写的一段shell代码. mysql设为linux服务 代码如下   cp /usr/local/mysql5/share/mysql/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig --level 2345 mysqld on chown mysql:my

centos开机自动启动SVN服务的方法

centos开机自动启动SVN服务的方法  centos开机自动启动SVN服务的方法 1.编辑rc.local文件  vi /etc/rc.d/rc.local 2.加入如下启动命令  /usr/bin/svnserve -d -r /home/svn 注意:  我们在用终端操作的时候,可以直接使用以下命令启动SVN:  svnserve -d -r /home/svn  但是在/etc/rc.d/rc.local 文件中必须写上完整的路径! 不知道svnserve安装到哪里了?  可以使用 w

Windows Server 2003开机自动启动MySQL服务设置方法

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   每次开机我都要去点击mysqld-nt.exe执行文件才启动mysql,虽然将创建了mysqld-nt.exe快捷方式到桌面,但还是想它能自动启动,怎么可以象mssql那样设置开机跟着启动? 下面为笔者总结的一些经验与大家分享: 1.打开命令行窗口(CMD) 2.切换到mysql目录下,例如:d:\xampp\mysql\bin 3.输入mysqld-nt  

MySQL开机自动启动的设置方法

首先通过chkconfig命令看看MySQL在不在可管理的列表中,命令是: chkconfig --list如果列表中没有mysqld这个,需要先用这个命令添加: chkconfig add mysqld 然后用这个命令设置开机启动: chkconfig mysqld on 最后确认一下是否设置成功 如果windows下的mysql也需要每次点击启动的朋友我们可参考下面方法 1.打开命令行窗口(CMD) 2.切换到mysql目录下,例如:d:xamppmysqlbin 3.输入mysqld-nt

如何解决MYSQL不能自动启动的问题?

解决|问题|mysql 一.下载安装文件到MySQL官方网站找到ZIP文件 二.解压文件,选择位置最好是放在某个盘的mysql文件夹下,这样比较容易找到,这里我们将文件解压到D盘的mysql文件夹下. 三.让windows知道你的MySQL在哪个位置在系统盘的Windows主目录下建立一个my.ini文件,内容如下: [mysqld]basedir=D:/mysql/datadir=D:/mysql/data/然后设置PATH环境变量.把D:\mysql\bin添加进去,这样的话下次进入命令模式

vc 如何创建服务-VC 开机自动启动。不用写注册表的方法。想写一个服务来启动这个程序。

问题描述 VC 开机自动启动.不用写注册表的方法.想写一个服务来启动这个程序. 有个EXE程序想要它开机自动启动.我不想用写注册表的方法启动.看能不能够写一个服务来启动这个程序.如果可以麻烦大家能够提供源码.谢谢!!!!! 解决方案 创建服务,CreateService()

《OpenStack云计算实战手册(第2版)》一2.3 用MySQL配置OpenStack镜像服务

2.3 用MySQL配置OpenStack镜像服务 OpenStack云计算实战手册(第2版) 默认情况下,OpenStack镜像服务,即Glance,被配置使用本地SQL数据库存储.为了弹性扩展,必须配置一个中心的.可扩展且更具可靠的数据库层.因此,可使用MySQL数据库来达到这个目的. 准备工作 请在开始前确认已经登录到一个已经安装了OpenStack镜像服务的服务器上. 登录到使用Vagrant创建的OpenStack控制节点,执行以下命令: vagrant ssh controller

《OpenStack云计算实战手册(第2版)》——2.3 用MySQL配置OpenStack镜像服务

2.3 用MySQL配置OpenStack镜像服务 默认情况下,OpenStack镜像服务,即Glance,被配置使用本地SQL数据库存储.为了弹性扩展,必须配置一个中心的.可扩展且更具可靠的数据库层.因此,可使用MySQL数据库来达到这个目的. 准备工作 请在开始前确认已经登录到一个已经安装了OpenStack镜像服务的服务器上. 登录到使用Vagrant创建的OpenStack控制节点,执行以下命令: vagrant ssh controller 操作步骤 执行下列步骤. 1.安装OpenS

Centos6和Centos7开机自动启动服务方法

说下Centos6和Centos7开机自动启动服务简单方法,我是采用yum install直接安装的,所以和自编译的方法有所不同,在这里只说rpm包安装后的自启动服务的方法: Centos6:对于Centos6系统来说,直接使用chkconfig命令即可. 例如我们以nginx服务为例: #chkconfig --add nginx 添加nginx服务 #chkconfig nginx on 开机自启nginx服务 #chkconfig nginx off 关闭开机自启 #chkconfig -