ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 【MySql】开机自动启动mysql服务

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

原创 Linux操作系统 作者:杨奇龙 时间:2011-12-30 21:52:18 0 删除 编辑
设置开机启动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
小结:
 这里介绍一个配置流程,所编写的脚本不具有健壮性!需要进一步修改,切勿使用在生产环境!!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22664653/viewspace-714277/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
MySQL DBA NoSQL DEVOPS

注册时间:2009-10-07

  • 博文量
    1026
  • 访问量
    7534834