Задавайте вопросы, мы ответим
Вы не зашли.
На сервере (linux) делаю архив базы с помощью mysqldump --opt
т.е. данные таблицу добавляются инсертом группами записей, а не по одной.
На своем компе имею mysql под windows.
Базу загружаю через mysql (\. backup.sql)
Пока ось был ХР и ниже все работало нормально. Потом перешел на семерку и начались проблемы. Выдает ошибки синтаксиса, когда строка инсерта по ее мнению сильно длинная.
Т.е. один и тотже дамп на ХР грузится нормально, а на семерке с ошибками.
например в общем виде:
insert into table1 values (record1),(record2),(record3);
insert into table1 values (record1),(record2),(record3),(record4),(record5);
первый инсерт выполняется, а второй дает ошибку синтаксиса, т.к. строка обрезается
изменения переменной max_allowd_packet не помогает.
Может есть способ победить без отказа от --opt?
Неактивен
А как загружаете? Через mysql < dump.sql? Если так, то можно попробовать
отказаться от виндового обработчика строк и воспользоваться встроенным
в клиент: mysql -e "SOURCE dump.sql".
Неактивен
загружал и зайдя в mysql, потом команда \. dump.sql
пробовал и вариант mysql -e "SOURCE dump.sql"
ошибка выдается в обоих случаях.
Неактивен
Ура!
Нашел решение. В виндах в свойствах ярлыка для mysql на закладке "Расположение" увеличил буфер экрана с 300 (стоит по умолчанию) до 1000 строк. Кол-во строк и столбцов можно подобрать опытным путем.
Отредактированно v2d (08.08.2010 19:50:35)
Неактивен