За последние 24 часа нас посетили 20752 программиста и 1651 робот. Сейчас ищут 1639 программистов ...

bash скрипт, бэкап бд

Тема в разделе "Настройка веб-сервера", создана пользователем Survivor, 26 фев 2023.

  1. Survivor

    Survivor Новичок

    С нами с:
    8 фев 2023
    Сообщения:
    88
    Симпатии:
    18
    Доброго времени суток!

    Есть два bash скрипта, задача которых делать бэкап базы данных.

    Скрипты сделал исполняемыми
    Код (Text):
    1. sudo chmod +x
    Папки backup, и сами скрипты недоступны из веб.

    1) Раз в 6 часов. Бэкап определенных таблиц.
    Код (Text):
    1.  
    2. #!/bin/bash
    3. filename=table_1+table_2_tables_`date +%F-%H_%M_%S`.sql
    4. nice mysqldump -u USER -p'PASSWORD' DATABASE table_1 table_2 > /home/backup/table_1+table_2_tables/$filename;
    5. cd /home/backup/table_1+table_2_tables;
    6. rm $(ls -t /home/backup/table_1+table_2_tables | sort | head -n -20);
    Не более 20 бэкапов в папке, предыдущие(более старые) будут удалены

    2) Ежедневно. Бэкап всех баз данных
    Код (Text):
    1.  
    2. #!/bin/bash
    3. filename=allbases_`date +%F-%H_%M_%S`.sql.gz
    4. nice mysqldump --all-databases --routines --routines --single-transaction -u USER -p'PASSWORD' | gzip > /home/backup/allbases/$filename
    5. cd /home/backup/allbases; rm $(ls -t /home/backup/allbases | sort | head -n -3)
    Не более 3-х бэкапов в папке, предыдущие(более старые) будут удалены.


    Вопросы в плане безопасности:
    - Нужно ли создавать отдельного пользователя mysql для бэкапа (с установкой определенных привилегий)
    - Насколько небезопасно передавать пароль в открытом виде?
    Как сделать лучше/иначе?
    - Какими вариантами ежедневных/почасовых бэкапов пользуетесь Вы?

    Спасибо.
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.115
    Симпатии:
    1.244
    Адрес:
    там-сям
    imho:
    - нет. используй того же, кем соединяешся в скриптах. ты ведь не используешь там root? точно? ))
    - небезопасно. не передавай его никуда
    - когда за это отвечаю я, делаю ежедневный. потом оставляю только еженедельные, потом месячные.
     
  3. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.593
    Симпатии:
    362
    Тут, похоже надо уточнить, что график создания лога не меняешь.
    Просто работает "задачка", чистящая лишние лог-файлы по истечении определённого времени?
     
  4. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.115
    Симпатии:
    1.244
    Адрес:
    там-сям
    конечно