Merge branch 'randomize_optimize'
This commit is contained in:
commit
84fba22bad
4 changed files with 26 additions and 5 deletions
10
README
10
README
|
@ -61,6 +61,16 @@ Optimizing tables
|
|||
If you wish mysql to periodically optimize tables, set the
|
||||
"$mysql_optimize_cron = true" variable before you include mysql::server.
|
||||
|
||||
By default, time of execution for the optimization script will be randomly
|
||||
chosen (and will stay consistant for a server) any day between midnight and
|
||||
7:00 AM. If you wish to force at least one value, you can use the following
|
||||
parameters to the mysql::server class (all values are used directly as a
|
||||
cronjob value so they should be set within cron value space):
|
||||
|
||||
* optimize_day => sets the day of the week (integer value) during which the script will run.
|
||||
* optimize_hour => sets the hour at which the optimization script will run.
|
||||
* optimize_minute => sets the minute in the hour at which the script will run.
|
||||
|
||||
Munin
|
||||
-----
|
||||
|
||||
|
|
|
@ -8,6 +8,9 @@ class mysql::server (
|
|||
$nagios_password_hash = 'absent',
|
||||
$backup_cron = false,
|
||||
$optimize_cron = false,
|
||||
$optimize_hour = fqdn_rand(7),
|
||||
$optimize_minute = fqdn_rand(60),
|
||||
$optimize_day = fqdn_rand(7),
|
||||
$backup_dir = '/var/backups/mysql',
|
||||
$manage_backup_dir = true,
|
||||
$nagios_notcp = false
|
||||
|
|
|
@ -70,7 +70,11 @@ class mysql::server::base {
|
|||
}
|
||||
|
||||
if $mysql::server::optimize_cron {
|
||||
include mysql::server::cron::optimize
|
||||
class { 'mysql::server::cron::optimize':
|
||||
optimize_hour => $mysql::server::optimize_hour,
|
||||
optimize_minute => $mysql::server::optimize_minute,
|
||||
optimize_day => $mysql::server::optimize_day,
|
||||
}
|
||||
}
|
||||
|
||||
service { 'mysql':
|
||||
|
|
|
@ -1,5 +1,9 @@
|
|||
# optimize mysql databases regurarely
|
||||
class mysql::server::cron::optimize {
|
||||
class mysql::server::cron::optimize (
|
||||
$optimize_hour,
|
||||
$optimize_minute,
|
||||
$optimize_day
|
||||
) {
|
||||
|
||||
file { 'mysql_optimize_script':
|
||||
path => '/usr/local/sbin/optimize_mysql_tables.rb',
|
||||
|
@ -12,9 +16,9 @@ class mysql::server::cron::optimize {
|
|||
cron { 'mysql_optimize_cron':
|
||||
command => '/usr/local/sbin/optimize_mysql_tables.rb',
|
||||
user => 'root',
|
||||
minute => 40,
|
||||
hour => 6,
|
||||
weekday => 7,
|
||||
minute => $optimize_minute,
|
||||
hour => $optimize_hour,
|
||||
weekday => $optimize_day,
|
||||
require => [ Exec['mysql_set_rootpw'],
|
||||
File['mysql_root_cnf'],
|
||||
File['mysql_optimize_script'] ],
|
||||
|
|
Loading…
Reference in a new issue