1
0
mirror of https://github.com/krislamo/puppet-rsnapshot synced 2024-09-20 01:10:35 +00:00
puppet-rsnapshot/templates/mysql.sh.erb

30 lines
1005 B
Plaintext
Raw Normal View History

2016-01-21 14:11:10 +00:00
#!/bin/bash
# written by Norbert Varzariu <loomsen@gmail.com>
# This Script is triggered by rsnapshot and dumps the specified dbs on the configured host.
#
host=<%=@host%>
user=<%=@dbbackup_user%>
pass=<%=@dbbackup_password%>
2016-01-22 12:17:03 +00:00
<% if (@dbbackup_user == 'root' && @dbbackup_password == '') -%>
dbs=(
$(ssh -l root "$host" "mysql -e 'show databases' | sed '1d;<%@ignore_dbs.to_a.each do |db|-%>/<%=db-%>/d;<%end-%>'" )
)
<%else-%>
dbs=(
$(ssh -l root "$host" "mysql -u <%=@dbbackup_user-%> -p'<%=@dbbackup_password-%>' -e 'show databases' | sed '1d;<%@ignore_dbs.each do |db|-%>/<%=db-%>/d;<%end-%>'" )
)
<%end-%>
2016-01-21 14:11:10 +00:00
for db in "${dbs[@]}"; do
2016-01-22 12:17:03 +00:00
<% if @dbbackup_user == 'root' -%>
ssh -l root "$host" "<%=@dumper-%> <%=@dump_flags-%> ${db}" > "$db".sql
<%else-%>
ssh -l root "$host" "<%=@dumper-%> --user=<%=@dbbackup_user-%> --password='<%=@dbbackup_password-%>' <%=@dump_flags-%> ${db}" > "$db".sql
<%end-%>
2016-01-21 14:11:10 +00:00
wait
2016-01-22 14:01:32 +00:00
<% if @compress != '' -%>
<%=@compress-%> "$db".sql
<%end-%>
2016-01-21 14:11:10 +00:00
done