2016-08-08 4 views
1

У меня есть сценарий оболочки, который работает как задание cron, которое создает дамп базы данных для целей резервного копирования. Когда я попытался сделать то же самое в Дженкинс выполнить оболочку, следующая строка, как представляется, дает ошибку:mysqldump не работает в jenkins execute shell

mysqldump -p thepassword -u theussr --all-databases > databases.sql 

, что происходит в том, что следующая ошибка попадет в databases.sql файл:

Usage: mysqldump [OPTIONS] database [tables] 
OR  mysqldump [OPTIONS] --databases [OPTIONS]   DB1 [DB2 DB3...] 
OR  mysqldump [OPTIONS] --all-databases [OPTIONS] 
For more options, use mysqldump --help 

Я смущен, что здесь происходит неправильно. Я попытался использовать «-r databases.sql», и файл вышел пустым, а ошибка была напечатана в консоли.

Я был бы очень признателен, если бы кто-то мог помочь.

Благодаря

+0

Вы задумались об этом? – Manticore

+0

Эй, Мантикора, На самом деле, я еще не понял, но скоро буду пытаться ответить ниже. –

+1

Не обращайте внимания на мой вопрос, это имя хоста –

ответ

1

Моя проблема была в пространство -p mypassword, однако с удалением пространства он тоже не работает. И наконец, это помогло решить проблему:

export MYSQL_PWD=yourverysecretpassword 
mysqldump -u theussr --all-databases > databases.sql 
+1

Я бы порекомендовал маркировку в качестве ответа, затем – Manticore

1

Для меня, это работает в Дженкинс:

mysqldump -hxx.xx.xx.xx -pmy_pwd -umy_user db_name > ${filename}

Я генерации имени файла с отметкой времени, как: filename=$(date +'%Y%d%m-%H_%M').sql

+0

Hey Deepak, Большое спасибо за ваш ответ. Могу ли я спросить, что такое -hxx.xx.xx.xx вариант? Я могу попробовать сейчас. –

+1

Да, его имя хоста, вы могли запустить команду? – Niyojan

+0

Да, но моя проблема была чем-то еще, как упоминалось в моем собственном ответе –

Смежные вопросы