Статьи
Форум
Q&A
Полезные коды
Войти
Регистрация
Привет, Гость!
Войти
Войти с VK
Войти с Google
Регистрация
Информация
Вопросы и ответы
Вопрос
1 голос
1313 просмотров
8.09.2016 / 00:12
aNNiMON
Бекап БД MySQL на ftp
linux
mysql
backup
shell
Необходимо по крону организовать бекап всех баз данных и выгрузить на ftp. Желательно с ротацией: удалять бекапы старше N дней.
ОС Debian.
Ответы
1 голос
#
8.09.2016 / 12:12
aNNiMON
Koenig, помогло. Вот сделал выгрузку с автоудалением устаревших бекапов.
[копировать]
[скачать]
#!/bin/bash
STOREDAYS
=
7
FILENAME
=$
(
date
+
%
Y-
%
m-
%
d_
%
H-
%
M
)
.sql.gz
MYSQL_USER
=root
MYSQL_PASS
=XXX
mysqldump
--opt
--user
$MYSQL_USER
--password
=
$MYSQL_PASS
--ignore-table
=mysql.event
--all-databases
|
gzip
-9
>
$FILENAME
FTP_HOST
=ftp.server.com
FTP_USER
=ftpuser
FTP_PASS
=XXX
ftpcmd
=
`
ftp
-in
$FTP_HOST
<< EOF1
user $FTP_USER $FTP_PASS
binary
cd backups
put $FILENAME
ls
quit
EOF1
`
files
=
(
$ftpcmd
)
rm
-f
$FILENAME
TT
=
`
date
--date
=
"
$STOREDAYS
days ago"
+
%
s
`
for
(
(
FNO
=
0
; FNO
<
${#files[@]}
; FNO+=
9
)
)
;
do
fdate
=
"
${files[`expr $FNO+5`]}
${files[`expr $FNO+6`]}
${files[`expr $FNO+7`]}
"
sdate
=
`
date
--date
=
"
$fdate
"
+
%
s
`
if
[
$sdate
-lt
$TT
]
;
then
echo
"Removing
${files[`expr $FNO+8`]}
"
ftp
-i
-n
$FTP_HOST
<< EOF2
user $FTP_USER $FTP_PASS
binary
cd backups
delete ${files[`expr $FNO+8`]}
bye
EOF2
fi
done
1 голос
#
8.09.2016 / 02:10
Koenig
не тестил
[копировать]
[скачать]
#!/bin/sh
DATE
=
`
date
+
"%d%m%Y"
`
DBSERVER
=127.0.0.1
DATABASE
=XXX
USER
=XXX
PASS
=XXX
SQLFILE
=
$DATABASE
-
${DATE}
.sql
mysqldump
--opt
--user
=
${USER}
--password
=
${PASS}
${DATABASE}
>
${SQLFILE}
gzip
$SQLFILE
FTPHOST
=ftp.server.com
FTPUSER
=ftpuser
FTPPASS
=password
PATH
=
/
path
/
to
/
file
/
ftp
-inv
$FTPHOST
<< EOF
user $FTPUSER $FTPPASS
cd $PATH
put $SQLFILE
bye
EOF
Изм.
Koenig
от 8.09.2016 / 02:11
1 голос
#
8.09.2016 / 01:40
Koenig
заюзать mysqldump
Всего: 3
Вопросы и ответы
Топ участников
Последние ответы
Комментарии
Поделиться
Разделы
Авторские статьи
Вопросы и ответы
Полезные коды
Форум
Гостевая книга
Реклама
Мы в соцсетях