импорт из файла:
mysql --user=DB_USER --password DB_NAME < dump.sql
импорт из сжатого файла:
gunzip < dump.sql.gz | mysql --user=DB_USER --password DB_NAME
импорт из сжатого файла на другом хосте (кроме localhost):
gunzip < dump.sql.gz | mysql --host=your.db.server.com --user=DB_USER --password DB_NAME
Я бы не стал указывать пароль в командной строке, так как он будет сохранен в истории bash, просто оставьте параметр --password
без действительного пароля, и MySQL запросит его.Если вы не укажете эту опцию, mysql попытается войти в систему без пароля.
На другой вопрос о том, куда загружать ваши SQL-файлы: вы должны знать, если что-то делаете на сервере.... в качестве альтернативы просто используйте временный каталог, как предложено выше, или создайте какую-нибудь резервную копию вне вашего webroot.