天天看點

shell腳本:MySQL啟動簡易腳本

shell腳本編寫MySQL建議簡易啟動腳本,練習使用變量,函數,case語句等知識;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

<code>[root@localhost baby]</code><code># cat mysql_function.sh</code>

<code>#!/bin/bash</code>

<code>. </code><code>/etc/init</code><code>.d</code><code>/functions</code>

<code>path=</code><code>/usr/local/mysql/bin/</code>

<code>function</code> <code>usage(){</code>

<code> </code><code>echo</code> <code>"$0 {start|stop|restart}"</code>

<code> </code><code>exit</code> <code>1</code>

<code>}</code>

<code>[ $</code><code># -ne 1 ] &amp;&amp; usage</code>

<code>function_mysql_start(){</code>

<code>     </code><code>$path</code><code>/mysqld_safe</code> <code>--user=mysql &amp;&gt;</code><code>/dev/null</code> <code>&amp;</code>

<code> </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ]</code>

<code>   </code><code>then</code>

<code>      </code><code>sleep</code> <code>5</code>

<code>      </code><code>action </code><code>"start mysql"</code> <code>/bin/true</code>

<code> </code><code>else</code>

<code>      </code><code>action </code><code>"start mysql"</code> <code>/bin/false</code>

<code> </code><code>fi</code>

<code>function_mysql_stop(){</code>

<code>     </code><code>$path</code><code>/mysqladmin</code> <code>-uroot </code><code>shutdown</code> <code>&amp;&gt;</code><code>/dev/null</code>

<code>     </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ]</code>

<code>       </code><code>then</code>

<code>          </code><code>action </code><code>"stop mysql"</code> <code>/bin/true</code>

<code>     </code><code>else</code>

<code>      </code><code>action </code><code>"stop mysql"</code> <code>/bin/false</code>

<code>     </code><code>fi</code>

<code>function_mysql_restart(){</code>

<code>     </code><code>function_mysql_stop</code>

<code>     </code><code>sleep</code> <code>3</code>

<code>     </code><code>function_mysql_start</code>

<code>case</code> <code>$1 </code><code>in</code>

<code> </code><code>start)</code>

<code> </code><code>function_mysql_start</code>

<code> </code><code>;;</code>

<code> </code><code>stop)</code>

<code> </code><code>function_mysql_stop</code>

<code> </code><code>restart)</code>

<code> </code><code>function_mysql_restart</code>

<code> </code><code>*)</code>

<code> </code><code>printf</code> <code>"Usage:$0 {start|stop|restart}\n"</code>

<code>esac</code>

執行結果如下圖所示:

<a href="http://s3.51cto.com/wyfs02/M00/74/AF/wKioL1Ym9HaQS2f1AABRc8nu7LY409.jpg" target="_blank"></a>

本文轉自 模範生 51CTO部落格,原文連結:http://blog.51cto.com/mofansheng/1704762如需轉載請自行聯系原作者