Sha256: 42bc1d7f58680aafa46a9f09435748b34d9c5829dc43bd024ce21d64b183c13d

Contents?: true

Size: 762 Bytes

Versions: 9

Compression:

Stored size: 762 Bytes

Contents

#!/usr/bin/env ruby
require 'fileutils'

# Config
mysql_user = '<%= opts['user'] %>'
mysql_pass = '<%= opts['password'] %>'
mysql_host = '127.0.0.1'

# Backup folder
backup_dir = '/media/backup/<%= host %>/mysql'

# Create folder if needed
FileUtils.mkdir_p backup_dir unless File.directory? backup_dir

# Backup MySql
result = ` mysql -u #{mysql_user} -p#{mysql_pass} -h #{mysql_host} --silent -N -e 'show databases'`.split("\n")
result.each do |db_name|
	db_name = db_name.strip
	next if %w(information_schema performance_schema).include? db_name

	filename = "#{backup_dir}/#{db_name}.mysql.sql.gz"
	puts "Backing up #{db_name} to #{filename}"
	` mysqldump -u #{mysql_user} -p#{mysql_pass} -h #{mysql_host} -e --opt -c #{db_name} | gzip -c > #{filename}`
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
odania_ops-0.0.14 templates/backup/mysql.rb.erb
odania_ops-0.0.13 templates/backup/mysql.rb.erb
odania_ops-0.0.12 templates/backup/mysql.rb.erb
odania_ops-0.0.11 templates/backup/mysql.rb.erb
odania_ops-0.0.10 templates/backup/mysql.rb.erb
odania_ops-0.0.9 templates/backup/mysql.rb.erb
odania_ops-0.0.8 templates/backup/mysql.rb.erb
odania_ops-0.0.7 templates/backup/mysql.rb.erb
odania_ops-0.0.6 templates/backup/mysql.rb.erb