ОШИБКА 1115 при восстановлении хранимой процедуры из файла дампа MySQL - PullRequest
1 голос
/ 22 марта 2012

В командной строке оболочки (резервное копирование и восстановление БД):

mysqldump -u"username" -p"password" --host="127.0.0.1" --port=3306 --routines --triggers --no-data --add-locks my_db_schema > "C:\dumpfile.sql"
mysqladmin -u"username" -p"password" --host="127.0.0.1" --port=3306 --force DROP my_db_schema
mysqladmin -u"username" -p"password" --host="127.0.0.1" --port=3306 CREATE my_db_schema
mysql -u"username" -p"password" --host="127.0.0.1" --port=3306 --force my_db_schema < "C:\dumpfile.sql"

В последней команде я получаю сообщение об ошибке:

ОШИБКА 1115 (42000) в строке xxxx: Неизвестный набор символов: 'latin1BEGIN'

Строка xxxx в C: \ dumpfile.sql (первая хранимая процедура в файле):

delimiter varchar(255)) RETURNS text CHARSET latin1
BEGIN

Как исправитьэта ошибка?

Я использую Windows и MariaDB, если это что-то меняет


Если я добавлю дополнительный возврат каретки между latin1и BEGIN скрипт работает нормально.Это кажется единственной проблемной строкой во всем сценарии.Все еще ищу решение этой проблемы.

1 Ответ

2 голосов
/ 22 марта 2012

Я предполагаю, что файл дампа в текстовом формате Unix (только \n), и вы импортируете его в Windoze, который ожидает \r\n.

\r - только дляконец строки в стиле Mac, если я правильно помню.

...