rc.mysql 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
  2. ##
  3. ## rc.mysql -- Run-Commands
  4. ##
  5. %config
  6. mysql_enable="$openpkg_rc_def"
  7. mysql_pwd_file=@l_prefix@/etc/mysql/my.pwd
  8. mysql_cnf_file=@l_prefix@/etc/mysql/my.cnf
  9. mysql_common_prolog="true"
  10. mysql_common_epilog="true"
  11. mysql_common_numfiles="10"
  12. mysql_common_minsize="1M"
  13. mysql_common_complevel="9"
  14. mysql_update_prolog="true"
  15. mysql_update_epilog="true"
  16. mysql_update_numfiles="10"
  17. mysql_update_minsize="1M"
  18. mysql_update_complevel="9"
  19. mysql_err_prolog="true"
  20. mysql_err_epilog="true"
  21. mysql_err_numfiles="10"
  22. mysql_err_minsize="1M"
  23. mysql_err_complevel="9"
  24. %common
  25. mysql_pid_file=@l_prefix@/var/mysql/mysqld.pid
  26. mysql_err_log=@l_prefix@/var/mysql/mysqld.err
  27. mysql_common_log=@l_prefix@/var/mysql/common.log
  28. mysql_update_log=@l_prefix@/var/mysql/update.log
  29. %status -u @l_rusr@ -o
  30. mysql_usable="unknown"
  31. mysql_active="no"
  32. @l_prefix@/bin/mysqladmin \
  33. --defaults-extra-file=${mysql_pwd_file} \
  34. ping >/dev/null 2>&1 && mysql_active="yes"
  35. if [ $mysql_active = "no" -a -f $mysql_pid_file ] ; then
  36. kill -0 `cat $mysql_pid_file` && mysql_active="unknown"
  37. fi
  38. echo "mysql_enable=\"$mysql_enable\""
  39. echo "mysql_usable=\"$mysql_usable\""
  40. echo "mysql_active=\"$mysql_active\""
  41. %start -p 400 -u @l_rusr@
  42. rcService mysql enable yes || exit 0
  43. rcService mysql active yes && exit 0
  44. cd @l_prefix@
  45. @l_prefix@/bin/mysqld_safe >/dev/null 2>&1 \
  46. --mysqld=@l_mysqld@ \
  47. --pid-file="$mysql_pid_file" \
  48. --log-error="$mysql_err_log" &
  49. %stop -p 600 -u @l_susr@
  50. rcService mysql enable yes || exit 0
  51. rcService mysql active no && exit 0
  52. HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \
  53. --defaults-extra-file=${mysql_pwd_file} \
  54. flush-logs
  55. HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \
  56. --defaults-extra-file=${mysql_pwd_file} \
  57. shutdown
  58. %restart -p 400 -u @l_susr@
  59. rcService mysql enable yes || exit 0
  60. rcService mysql active no && exit 0
  61. rc mysql stop start
  62. %daily -u @l_susr@
  63. rcService mysql enable yes || exit 0
  64. rcTmp -i
  65. hintfile=`rcTmp -f -n hint`
  66. shtool rotate -f \
  67. -n ${mysql_common_numfiles} -s ${mysql_common_minsize} -d \
  68. -z ${mysql_common_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
  69. -P "${mysql_common_prolog}" \
  70. -E "${mysql_common_epilog}; echo 1 >$hintfile" \
  71. ${mysql_common_log}
  72. shtool rotate -f \
  73. -n ${mysql_update_numfiles} -s ${mysql_update_minsize} -d \
  74. -z ${mysql_update_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
  75. -P "${mysql_update_prolog}" \
  76. -E "${mysql_update_epilog}; echo 1 >$hintfile" \
  77. ${mysql_update_log}
  78. shtool rotate -f \
  79. -n ${mysql_err_numfiles} -s ${mysql_err_minsize} -d \
  80. -z ${mysql_err_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
  81. -P "${mysql_err_prolog}" \
  82. -E "${mysql_err_epilog}; echo 1 >$hintfile" \
  83. ${mysql_err_log}
  84. if [ -s $hintfile ]; then
  85. rc mysql restart
  86. fi
  87. rcTmp -k