1 (изменено: ysl, 2006-11-11 21:30:53)

Тема: #1064 ошибка при импорте дампа базы данных MySQL

При импорте пишет -

Ошибка

SQL-запрос:

-- phpMyAdmin SQL Dump
-- version 2.8.2-Debian-0.1
-- http://www.phpmyadmin.net
--
-- Хост: localhost
-- Время создания: Ноя 11 2006 г., 22:17
-- Версия сервера: 5.0.20
-- Версия PHP: 4.4.2-1.1
--
-- БД: `ab`
--
-- --------------------------------------------------------
--
-- Структура таблицы `additions`
--
CREATE TABLE `additions` (
`uid` varchar( 8 ) NOT NULL ,
`amount` float NOT NULL ,
`comment` varchar( 50 ) NOT NULL ,
`delmark` tinyint( 1 ) NOT NULL default '0'
) ENGINE = MYISAM DEFAULT CHARSET = cp1251;

Ответ MySQL: Документация
#1064 - You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=cp1251' at line 9

что делать?

2

Re: #1064 ошибка при импорте дампа базы данных MySQL

Очень распространённая ошибка. Причины могут быть в следующем:
1) Тип движка БД в которую вы пытаетесь вставить дамп не MYISAM.
2) Кодировка БД, в которую вставляется таблица (`ab`) - не cp1251.
3) От такой ошибки иногда помогает смена сопоставления на заглавной странице phpMyAdmin. Просто выберите из выпадающего списка "MySQL connection collation:" - cp1251_general_ci.

3 (изменено: ysl, 2006-11-12 00:09:19)

Re: #1064 ошибка при импорте дампа базы данных MySQL

3) От такой ошибки иногда помогает смена сопоставления на заглавной странице phpMyAdmin. Просто выберите из выпадающего списка "MySQL connection collation:" - cp1251_general_ci.

А можна поподробнее у меня phpMyAdmin - 2.9.1 rus

1) Тип движка БД в которую вы пытаетесь вставить дамп не MYISAM.

А можна поменять тип движка БД?
Да и для того чтобы вставить дамп нужно создать базу?

2) Кодировка БД, в которую вставляется таблица (`ab`) - не cp1251.

И кодировка базы помоему Russ UTF-8

4

Re: #1064 ошибка при импорте дампа базы данных MySQL

ysl
Я бы порекомендовал во избежании подобных синтаксических ошибок при создании дампа обращать внимание на опцию "SQL compatibility mode" в блоке "SQL options" и выбирать MySQL40, если у запущен MySQL>4.x.x

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

5

Re: #1064 ошибка при импорте дампа базы данных MySQL

А можна поподробнее у меня phpMyAdmin - 2.9.1 rus

Индексная страница phpMyAdmin, в выпадающем списке "Сопоставление соединения с MySQL:" выберите cp1251_general_ci.

А можна поменять тип движка БД?

Да, можно. Но проще создать БД с тем движком, который нужен изначально.

Да и для того чтобы вставить дамп нужно создать базу?

Обязательно.

И кодировка базы помоему Russ UTF-8

Для того чтобы узнать в какой кодировке находится БД, в левом фрейме выберите её, в правом, в самом низу сетки отображающей таблицы увидете кодировку. При необходимости поменять её зайдите на вкладку "Операции". Там всё ясно и понятно.

6 (изменено: ysl, 2006-11-13 01:26:39)

Re: #1064 ошибка при импорте дампа базы данных MySQL

Для того чтобы узнать в какой кодировке находится БД, в левом фрейме выберите её, в правом, в самом низу сетки отображающей таблицы увидете кодировку. При необходимости поменять её зайдите на вкладку "Операции". Там всё ясно и понятно.

Это дамп а не база.

Я скопировал базу как есть всю папку, но она не работает, таблици видно ,но Ошибка

SQL-запрос: Правка

SHOW INDEX FROM `additions` ;

Ответ MySQL: Документация
#1033 - Incorrect information in file: '.\ab\additions.frm'
Что это?

7

Re: #1064 ошибка при импорте дампа базы данных MySQL

ysl

Это дамп а не база.

Перед импортом дампа необходимо создать БД, вот её кодировку и надо задать так, как надо.

Я скопировал базу как есть всю папку, но она не работает

Приехали. sad
То что вы делаете импортом дампа не называется и вставлять таким образом таблицы нельзя.

Читайте FAQ и справку данного портала по импорту БД. При возникновении затруднений, задавайте конкретные вопросы. Постараемся вам помочь.

8

Re: #1064 ошибка при импорте дампа базы данных MySQL

ysl
Правила напоминаю: один топик - один вопрос. Последняя ошибка приведенная тобой уже не синтаксическая. И возникает она как уже модератор сказал не в результате импорта дампа.

#1033 - Incorrect information in file: '.\ab\additions.frm'
Что это?

Поврежден файл описания, содержащий структуру таблицы. Запусти базу данных, создай таблицу с точно такой же структурой - создашь корректный additions.frm, потом скопируй туда (в директорию \ab) свои неповрежденные additions.MYD и additions.MYI (если у тебя таблица MyISAM). Должно сработать.

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

9

Re: #1064 ошибка при импорте дампа базы данных MySQL

здравствуйте, такая же точно ошибка...проблема вот в чем, заливаю базу через хостинг, т.е. phpadmin.masterhost.ru. нужна база на сайте. всё скомпелировал dump'ом...импортирую .sql-файл, получаю ошибку:
CREATE TABLE `be_groups` (

...

) ENGINE = InnoDB DEFAULT CHARSET = latin1;


Ответ MySQL:

#1064 - You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT CHARSET=latin1' at line 29

в файле my.ini ставлю cp1251 кодировку, но база всё-равно создаётся с латин1...пробовал потом изменить на cp1251 по-другому, всё-равно пишет ошибку, только не с латин1, а с cp1251... что посоветуете?

10

Re: #1064 ошибка при импорте дампа базы данных MySQL

quxx
При постановке вопроса ты забыл указать версию phpMyAdmin и MySQL-сервера. Если вручную удалить из дампа запись "DEFAULT CHARSET = latin1", ошибка наблюдается?

Если я правильно тебя понял: проблема возникает при импорте дампа на удаленный MySQL-сервер, который был ранее создан с помощью mysqldump на локальном MySQL-сервере.

Если это так, то причиной может старая версия удаленного MySQL-сервера: возможность задания кодировок на уровне сервера была реализована в MySQL4.1. Поэтому на старых версиях MySQL синтаксис ".. DEFAULT CHARSET = latin1;" будет вызывать #1064 ошибку.

Можно воспользоваться возможностью задавать режим совместимости, которую предоставляет phpMyAdmin посредством опции "SQL compatibility mode" в блоке "SQL options" на вкладке "Export".

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

11

Re: #1064 ошибка при импорте дампа базы данных MySQL

Lokki сказал:

quxx
При постановке вопроса ты забыл указать версию phpMyAdmin и MySQL-сервера. Если вручную удалить из дампа запись "DEFAULT CHARSET = latin1", ошибка наблюдается?

Если я правильно тебя понял: проблема возникает при импорте дампа на удаленный MySQL-сервер, который был ранее создан с помощью mysqldump на локальном MySQL-сервере.

Если это так, то причиной может старая версия удаленного MySQL-сервера: возможность задания кодировок на уровне сервера была реализована в MySQL4.1. Поэтому на старых версиях MySQL синтаксис ".. DEFAULT CHARSET = latin1;" будет вызывать #1064 ошибку.

Можно воспользоваться возможностью задавать режим совместимости, которую предоставляет phpMyAdmin посредством опции "SQL compatibility mode" в блоке "SQL options" на вкладке "Export".

спасибо,...извиняюсь за неполноту вопроса. на локалке стоит MySQL 4.1..на удалёнке стоит версия 4.0...в ручную удаляю запись из дампа, всё-равно ошибка... разберёмся теперь )

12

Re: #1064 ошибка при импорте дампа базы данных MySQL

Доброго времени суток 
возникла похожая проблема
phpMyAdmin - 2.10.0-dev
сервера: 4.1.3b-beta-nt
MySQL-клиента: 5.0.22
MySQL-кодировка: UTF-8 Unicode (utf8)
при восстановлении базы с дампа  дает ошибку пишет такую ошибку
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'group' at line 1


drop table if exists building;
drop table if exists department;
drop table if exists emploee;
drop table if exists ext_phone;
drop table if exists group;
drop table if exists int_phone;
drop table if exists position;
drop table if exists room;

13

Re: #1064 ошибка при импорте дампа базы данных MySQL

Blacktorn
group - является зарезервированным словом MySQL, поэтому должно быть заключено в косые кавычки.

14

Re: #1064 ошибка при импорте дампа базы данных MySQL

а по барабану не помогает... прописал по другому  base.group  (где  base  название базы)  и все заработало

15

Re: #1064 ошибка при импорте дампа базы данных MySQL

у меня таже проблема версия mysql клиента в который я заливаю дамп  5.0.45 и там нельзя выбрать дженерал си , что мне делать?

вот ошибка

SQL-запрос:

-- phpMyAdmin SQL Dump
-- version 3.0.0-dev
-- http://www.phpmyadmin.net
--
-- Хост: *.*.0.11
-- Время создания: Авг 13 2008 г., 13:20
-- Версия сервера: 5.0.51
-- Версия PHP: 5.2.5
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";

Ответ MySQL: Документация
#1193 - Unknown system variable 'SQL_MODE'

16

Re: #1064 ошибка при импорте дампа базы данных MySQL

Menart
Попробуйте закомментировать в дампе строку:
-- SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";

17

Re: #1064 ошибка при импорте дампа базы данных MySQL

пробовал, он про следующую строку такую же ошибку выдает

18

Re: #1064 ошибка при импорте дампа базы данных MySQL

Menart
Сомневаюсь, что ошибка будет такая же.

Какая версия MySQL сервера на котором осуществляется импорт?

19

Re: #1064 ошибка при импорте дампа базы данных MySQL

Люди помогите!!! Я администратор сайта. Стоял у меня движок DataLife Engine 7.0 я обновил его до 7.2
Появились в админке баги, не мог юзеру поменять категорию или его послать в бан. В итоге я решил вернуть DataLife Engine 7.0 и случилось еще хуже. Теперь я могу с юзером делать что захочу, а вот добавить новость из админки не могу. Пишет

MySQL Error!
------------------------

The Error returned was:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'allow_comm='1', approve='1', allow_main='1', allow_rate='1', fixed='1', allow_br' at line 1

Error Number:
1064


И окно с ошибками.
Кто мне поможет решить проблему?

20

Re: #1064 ошибка при импорте дампа базы данных MySQL

SkyLine 32
Вероятно при обновлении были изменены некоторые таблицы в БД и теперь они вызывают ошибки при работе с предыдущей версией скрипта. Попробуйте поискать у разработчика скрипт отката версий, или можно попробовать посмотреть на то какие таблицы были изменены при обновлении и вернуть их в первоночальное состояние.

21

Re: #1064 ошибка при импорте дампа базы данных MySQL

А, где можно узнать значения ошибок по их номеру , при работе с БД часто выскакивают? Спасибо.

22

Re: #1064 ошибка при импорте дампа базы данных MySQL

копируете полность текст ошибки и вставляете ее в поисковик, вам сразу выдаст кучу сайтов с похожими ворпосами и как правильно утсранить ощибку))))))

23

Re: #1064 ошибка при импорте дампа базы данных MySQL

webv сказал:

А, где можно узнать значения ошибок по их номеру , при работе с БД часто выскакивают? Спасибо.

Обычно ошибки описательны, но здесь можно посмотреть описание, если выводится только код ошибки.
http://dev.mysql.com/doc/refman/5.0/en/ … dling.html