rc.mysql 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. #!@l_prefix@/bin/openpkg 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. mysql_flush_logs () {
  30. HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \
  31. --defaults-extra-file=${mysql_pwd_file} \
  32. flush-logs
  33. }
  34. %status -u @l_susr@ -o
  35. mysql_usable="unknown"
  36. mysql_active="no"
  37. @l_prefix@/bin/mysqladmin \
  38. --defaults-extra-file=${mysql_pwd_file} \
  39. ping >/dev/null 2>&1 && mysql_active="yes"
  40. if [ $mysql_active = "no" -a -f $mysql_pid_file ] ; then
  41. kill -0 `cat $mysql_pid_file` && mysql_active="unknown"
  42. fi
  43. echo "mysql_enable=\"$mysql_enable\""
  44. echo "mysql_usable=\"$mysql_usable\""
  45. echo "mysql_active=\"$mysql_active\""
  46. %start -p 400 -u @l_rusr@
  47. rcService mysql enable yes || exit 0
  48. rcService mysql active yes && exit 0
  49. cd @l_prefix@
  50. @l_prefix@/bin/mysqld_safe >/dev/null 2>&1 \
  51. --mysqld=@l_mysqld@ \
  52. --pid-file="$mysql_pid_file" \
  53. --err-log="$mysql_err_log" &
  54. %stop -p 600 -u @l_susr@
  55. rcService mysql enable yes || exit 0
  56. rcService mysql active no && exit 0
  57. mysql_flush_logs
  58. HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \
  59. --defaults-extra-file=${mysql_pwd_file} \
  60. shutdown
  61. %restart -p 400 -u @l_susr@
  62. rcService mysql enable yes || exit 0
  63. rcService mysql active no && exit 0
  64. rc mysql stop start
  65. %daily -u @l_susr@
  66. rcService mysql enable yes || exit 0
  67. rcTmp -i
  68. hintfile=`rcTmp -f -n hint`
  69. shtool rotate -f \
  70. -n ${mysql_common_numfiles} -s ${mysql_common_minsize} -d \
  71. -z ${mysql_common_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
  72. -P "${mysql_common_prolog}" \
  73. -E "${mysql_common_epilog}; echo 1 >$hintfile" \
  74. ${mysql_common_log}
  75. shtool rotate -f \
  76. -n ${mysql_update_numfiles} -s ${mysql_update_minsize} -d \
  77. -z ${mysql_update_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
  78. -P "${mysql_update_prolog}" \
  79. -E "${mysql_update_epilog}; echo 1 >$hintfile" \
  80. ${mysql_update_log}
  81. shtool rotate -f \
  82. -n ${mysql_err_numfiles} -s ${mysql_err_minsize} -d \
  83. -z ${mysql_err_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
  84. -P "${mysql_err_prolog}" \
  85. -E "${mysql_err_epilog}; echo 1 >$hintfile" \
  86. ${mysql_err_log}
  87. if [ -s $hintfile ]; then
  88. mysql_flush_logs
  89. fi
  90. rcTmp -k