Я всегда делал это:
mysqldump -hlocalhost -uuser -ppass MYDATABASE > /home/f/db_backup/MYDATABASE.sql
mysql -uuser -ppass MYDATABASE < MYDATABASE.sql
Но если я это сделаю, то... это безопасно? Является ли это идентичным указанному выше?
mysqldump -hlocalhost -uuser -ppass MYDATABASE | gzip > /home/f/db_backup/MYDATABASE.sql.gz
zcat MYDATABASE.sql.gz | mysql -uuser -ppass MYDATABASE
Это совершенно нормально (и, конечно же, более эффективно!) Mysql не видит никакой разницы; оба метода заканчивают передачу несжатых данных SQL.
Это безопасно (в основном), и если у вас есть запасные циклы процессора, вы можете добавить '-C' в
ваш mysqldump, чтобы он сжимал клиентские ↔ серверные сообщения, которые должны сохранять
вы некоторое время на больших БД.
FWIW за db имя пользователя/пароль в ~/.my.cnf пользователя, который работает
команда mysqldump. Таким образом, учетные данные БД не будут отображаться другими
пользователей в системе, используя команду типа "ps".