Как указано в man mysqldump: см. 6.1.2.1.Руководство для конечного пользователя по безопасности паролей в справочном руководстве MySQL.
Файл опций является самой безопасной ставкой, не в последнюю очередь в соответствии с приведенной выше ссылкой. Предоставлять его в виде открытого текста в crontab нехорошо, не в последнюю очередь, поскольку командная строка процесса по умолчанию видна через ps для других пользователей. То же самое на самом деле относится к переменным среды, как описано в ссылке.
Соответствующая часть справочного руководства по MySQL:
Сохраните ваш пароль в файле опций. Например, в Unix вы можете указать свой пароль в разделе [client] файла .my.cnf в вашем домашнем каталоге:
[client]
password=your_pass
Чтобы сохранить пароль в безопасности, файл не должен быть доступен никому, кроме вас самих. Чтобы обеспечить это, установите режим доступа к файлу на 400 или 600 . Например:
shell> chmod 600 .my.cnf
Чтобы присвоить в командной строке конкретный файл параметров, содержащий пароль, используйте параметр --defaults-file=file_name , где file_name - это полный путь к файлу. Например:
shell> mysql --defaults-file=/home/francis/mysql-opts
Раздел 4.2.3.3, «Использование файлов опций» , обсуждает файлы опций более подробно.
Также см. Https://stackoverflow.com/q/10725209.