summaryrefslogtreecommitdiff
path: root/files/scripts/optimize_tables.rb
diff options
context:
space:
mode:
Diffstat (limited to 'files/scripts/optimize_tables.rb')
-rw-r--r--files/scripts/optimize_tables.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/files/scripts/optimize_tables.rb b/files/scripts/optimize_tables.rb
index 46e223e..3eb7425 100644
--- a/files/scripts/optimize_tables.rb
+++ b/files/scripts/optimize_tables.rb
@@ -2,7 +2,8 @@
# set home as we runit as weekly cron, where HOME is /
ENV['HOME'] = '/root'
-tables = %x{mysql -Bse "SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA NOT IN ('information_schema','mysql') AND Data_free > 0 AND ENGINE IN ('MyISAM','InnoDB','ARCHIVE')"}
+tables = %x(mysql -Bse "SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA NOT IN ('information_schema','mysql') AND Data_free > 0 AND ENGINE IN ('MyISAM','InnoDB','ARCHIVE')")
+tables = tables.split(/\n/)
tables.each { |table|
tableitems = table.chomp.split(/\t/)
system "mysql #{tableitems[0]} -Bse \"OPTIMIZE TABLE \\`#{tableitems[0]}\\`.\\`#{tableitems[1]}\\`\" | grep -q OK"