ERROR at line 1: Unknown command ‘-‘. — это ошибка, возникающая при попытке импортировать базу данных, экспортированную с другого веб-сервера, через командную строку. Если вы столкнулись с этой ошибкой при импорте базы данных в систему MariaDB, я надеюсь, что приведенное ниже краткое руководство вам поможет.
Короче говоря, если вас не волнует, почему возникает эта ошибка, решение очень простое. При импорте базы данных в MariaDB будет добавлено «--force
», чтобы продолжить импорт файла .sql через командную строку.
Командная строка импорта будет выглядеть так:
mariadb -u <user_db> -p -h localhost <name_db> --force < database.sql
Ошибка "MariaDB Import ERROR at line 1: Unknown command '-'.
» вызвано проблемой совместимости. К утилите mariadb-dump был применен дополнительный патч, добавляющий в самое начало файла дампа, в комментарии, команду для запуска режима песочницы. Эта команда выглядит следующим образом:
/*!999999\ - enable the sandbox mode */
Проблема совместимости возникает из-за того, что более старые версии клиента MariaDB и все версии клиента MySQL не понимают эту команду и будут генерировать ошибку. Итак, если вы импортируете дамп из новой версии MariaDB в версию, не имеющую этого патча, или в версию MySQL, вы столкнетесь с этой проблемой.
MariaDB Import ERROR at line 1: Unknown command '-'.
Related: Import .SQL File Error – MySQL server has gone away
Изменение было реализовано в следующих версиях MariaDB: 10.5.25, 10.6.18, 10.11.8, 10.11.9, 11.0.6, 11.1.5, 11.2.4 и 11.4.2. Если вы экспортируете файл дампа из этих версий и попытаетесь импортировать его в необновленную версию, вы столкнетесь с этой ошибкой.