У mysqldump есть проблема в задании cron cPanel

В Perl это можно сделать так:

perl -pe 'BEGIN { $v=shift; }
          s/(MyID=")[^"]*(")/$1.$v.++$t.$2/ge' 7777777878889888 foo.xml bar.xml
-1
27.06.2019, 11:13
1 ответ

Поскольку в вашем пароле MySQL есть специальный символ, вам нужно его экранировать, если вы хотите использовать голую команду в задании cron, поскольку %имеет особое значение для cron.

Вместо этого я бы посоветовал использовать скрипт, например. простой:

#!/bin/bash

mysqldump --opt -Q -u'{mysql_user_name}' --password='{password}' {database} | gzip > /home/[account_name]/db_backup/db_backup$(date +"%Y.%m.%d.%S.%N").sql.gz

Вы можете пойти еще дальше и переместить учетные данные в переменные:

#!/bin/bash

MY_USER="{mysql_user_name}"
MY_PWD="{password}"

mysqldump --opt -Q -u"$MY_USER" --password="$MY_PWD" {database} | gzip > /home/[account_name]/db_backup/db_backup$(date +"%Y.%m.%d.%S.%N").sql.gz

Это должно сработать для вас.

0
28.01.2020, 05:12

Теги

Похожие вопросы