当前位置: 移动技术网 > IT编程>数据库>Mysql > case语句编写mysql启动脚本

case语句编写mysql启动脚本

2018年03月15日  | 移动技术网IT编程  | 我要评论

例子:开发mysql单实例或者多实例启动脚本

已知mysql多实例启动命令为:

mysqld_safe --deafaults-file=/data/3306/my.cnf &

停止命令

mysqladmin -u root -p123 -S /data/3306/mysql.sock shutdown

请完成mysql单实例或者多实例启动脚本编写。

要求:用函数、case语句等实现。

[root@node01 day10]# vi start_db.sh

#!/bin/sh

# chkconfig: 2345 35 67

# description: start rsync and stop rsync scripts.

. /etc/init.d/functions

path=/usr/bin/

pass=123

user=root

function usage(){

echo "$0 {start|stop|restart}"

exit 1

}

[ $# -ne 1 ] && usage

function start_mysql(){

$path/mysqld_safe --user=mysql >/dev/null 2>&1 &

if [ $? -eq 0 ]

then

action "start mysql" /bin/true

else

action "start mysql" /bin/false

fi

}

function stop_mysql(){

mysqladmin -u$user -p$pass shutdown >/dev/null 2>&1

if [ $? -eq 0 ]

then

action "stop mysql" /bin/true

else

action "stop mysql" /bin/false

fi

}

case "$1" in

start)

start_mysql

RETVAL=$?

;;

stop)

stop_mysql

RETVAL=$?

;;

restart)

stop_mysql

sleep 2

start_mysql

RETVAL=$?

;;

*)

usage

esac

[root@node01 day10]# sh start_db01.sh start

start mysql [ OK ]

[root@node01 day10]# sh start_db01.sh stop

stop mysql [ OK ]

[root@node01 day10]# sh start_db01.sh restart

stop mysql [FAILED]

start mysql [ OK ]

[root@node01 day10]# mysql -uroot -p123

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网