Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
1 2006-11-11 20:30:06 (изменено: ysl, 2006-11-11 21:30:53)
- ysl
- Редкий гость
- Неактивен
- Зарегистрирован: 2006-11-11
- Сообщений: 18
Тема: #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 Ответ от Hanut 2006-11-11 23:10:49

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
Очень распространённая ошибка. Причины могут быть в следующем:
1) Тип движка БД в которую вы пытаетесь вставить дамп не MYISAM.
2) Кодировка БД, в которую вставляется таблица (`ab`) — не cp1251.
3) От такой ошибки иногда помогает смена сопоставления на заглавной странице phpMyAdmin. Просто выберите из выпадающего списка «MySQL connection collation:» — cp1251_general_ci.
3 Ответ от ysl 2006-11-11 23:58:09 (изменено: ysl, 2006-11-12 00:09:19)
- ysl
- Редкий гость
- Неактивен
- Зарегистрирован: 2006-11-11
- Сообщений: 18
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 Ответ от Lokki 2006-11-12 11:12:18

- Lokki
- Админ
- Неактивен
- Откуда: Москва
- Зарегистрирован: 2006-01-25
- Сообщений: 910
Re: #1064 ошибка при импорте дампа базы данных MySQL
ysl
Я бы порекомендовал во избежании подобных синтаксических ошибок при создании дампа обращать внимание на опцию «SQL compatibility mode» в блоке «SQL options» и выбирать MySQL40, если у запущен MySQL>4.x.x
Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)
5 Ответ от Hanut 2006-11-12 20:12:04

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
А можна поподробнее у меня phpMyAdmin — 2.9.1 rus
Индексная страница phpMyAdmin, в выпадающем списке «Сопоставление соединения с MySQL:» выберите cp1251_general_ci.
А можна поменять тип движка БД?
Да, можно. Но проще создать БД с тем движком, который нужен изначально.
Да и для того чтобы вставить дамп нужно создать базу?
Обязательно.
И кодировка базы помоему Russ UTF-8
Для того чтобы узнать в какой кодировке находится БД, в левом фрейме выберите её, в правом, в самом низу сетки отображающей таблицы увидете кодировку. При необходимости поменять её зайдите на вкладку «Операции». Там всё ясно и понятно.
6 Ответ от ysl 2006-11-13 01:20:15 (изменено: ysl, 2006-11-13 01:26:39)
- ysl
- Редкий гость
- Неактивен
- Зарегистрирован: 2006-11-11
- Сообщений: 18
Re: #1064 ошибка при импорте дампа базы данных MySQL
Для того чтобы узнать в какой кодировке находится БД, в левом фрейме выберите её, в правом, в самом низу сетки отображающей таблицы увидете кодировку. При необходимости поменять её зайдите на вкладку «Операции». Там всё ясно и понятно.
Это дамп а не база.
Я скопировал базу как есть всю папку, но она не работает, таблици видно ,но Ошибка
SQL-запрос: Правка
SHOW INDEX FROM `additions` ;
Ответ MySQL: Документация
#1033 — Incorrect information in file: ‘.abadditions.frm’
Что это?
7 Ответ от Hanut 2006-11-13 17:49:21

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
ysl
Перед импортом дампа необходимо создать БД, вот её кодировку и надо задать так, как надо.
Я скопировал базу как есть всю папку, но она не работает
Приехали. ![]()
То что вы делаете импортом дампа не называется и вставлять таким образом таблицы нельзя.
Читайте FAQ и справку данного портала по импорту БД. При возникновении затруднений, задавайте конкретные вопросы. Постараемся вам помочь.
8 Ответ от Lokki 2006-11-13 19:56:55

- Lokki
- Админ
- Неактивен
- Откуда: Москва
- Зарегистрирован: 2006-01-25
- Сообщений: 910
Re: #1064 ошибка при импорте дампа базы данных MySQL
ysl
Правила напоминаю: один топик — один вопрос. Последняя ошибка приведенная тобой уже не синтаксическая. И возникает она как уже модератор сказал не в результате импорта дампа.
#1033 — Incorrect information in file: ‘.abadditions.frm’
Что это?
Поврежден файл описания, содержащий структуру таблицы. Запусти базу данных, создай таблицу с точно такой же структурой — создашь корректный additions.frm, потом скопируй туда (в директорию ab) свои неповрежденные additions.MYD и additions.MYI (если у тебя таблица MyISAM). Должно сработать.
Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)
9 Ответ от quxx 2006-12-30 15:08:12
- quxx
- Редкий гость
- Неактивен
- Зарегистрирован: 2006-12-30
- Сообщений: 2
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 Ответ от Lokki 2006-12-30 23:17:26

- Lokki
- Админ
- Неактивен
- Откуда: Москва
- Зарегистрирован: 2006-01-25
- Сообщений: 910
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 Ответ от quxx 2007-01-01 23:27:15
- quxx
- Редкий гость
- Неактивен
- Зарегистрирован: 2006-12-30
- Сообщений: 2
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 Ответ от Blacktorn 2007-03-21 06:01:48
- Blacktorn
- Редкий гость
- Неактивен
- Зарегистрирован: 2007-03-21
- Сообщений: 2
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 Ответ от Hanut 2007-03-21 12:44:28

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
Blacktorn
group — является зарезервированным словом MySQL, поэтому должно быть заключено в косые кавычки.
14 Ответ от Blacktorn 2007-03-21 13:21:52
- Blacktorn
- Редкий гость
- Неактивен
- Зарегистрирован: 2007-03-21
- Сообщений: 2
Re: #1064 ошибка при импорте дампа базы данных MySQL
а по барабану не помогает… прописал по другому base.group (где base название базы) и все заработало
15 Ответ от Menart 2008-08-14 23:07:49
- Menart
- Редкий гость
- Неактивен
- Зарегистрирован: 2008-08-14
- Сообщений: 2
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 Ответ от Hanut 2008-08-15 00:58:49

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
Menart
Попробуйте закомментировать в дампе строку:
— SET SQL_MODE = «NO_AUTO_VALUE_ON_ZERO»;
17 Ответ от Menart 2008-09-04 01:12:52
- Menart
- Редкий гость
- Неактивен
- Зарегистрирован: 2008-08-14
- Сообщений: 2
Re: #1064 ошибка при импорте дампа базы данных MySQL
пробовал, он про следующую строку такую же ошибку выдает
18 Ответ от Hanut 2008-09-04 14:16:07

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
Menart
Сомневаюсь, что ошибка будет такая же.
Какая версия MySQL сервера на котором осуществляется импорт?
19 Ответ от SkyLine 32 2008-09-07 21:41:04
- SkyLine 32
- Новичок
- Неактивен
- Зарегистрирован: 2008-09-07
- Сообщений: 1
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 Ответ от Hanut 2008-09-08 03:20:36

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
SkyLine 32
Вероятно при обновлении были изменены некоторые таблицы в БД и теперь они вызывают ошибки при работе с предыдущей версией скрипта. Попробуйте поискать у разработчика скрипт отката версий, или можно попробовать посмотреть на то какие таблицы были изменены при обновлении и вернуть их в первоночальное состояние.
21 Ответ от webv 2008-10-03 09:39:30
- webv
- Новичок
- Неактивен
- Зарегистрирован: 2008-01-12
- Сообщений: 1
Re: #1064 ошибка при импорте дампа базы данных MySQL
А, где можно узнать значения ошибок по их номеру , при работе с БД часто выскакивают? Спасибо.
22 Ответ от lostoffuture 2008-10-03 09:44:33
- lostoffuture
- Редкий гость
- Неактивен
- Зарегистрирован: 2008-10-02
- Сообщений: 7
Re: #1064 ошибка при импорте дампа базы данных MySQL
копируете полность текст ошибки и вставляете ее в поисковик, вам сразу выдаст кучу сайтов с похожими ворпосами и как правильно утсранить ощибку))))))
23 Ответ от Hanut 2008-10-03 14:26:49

- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1064 ошибка при импорте дампа базы данных MySQL
webv сказал:
А, где можно узнать значения ошибок по их номеру , при работе с БД часто выскакивают? Спасибо.
Обычно ошибки описательны, но здесь можно посмотреть описание, если выводится только код ошибки.
http://dev.mysql.com/doc/refman/5.0/en/ … dling.html
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
I am importing a fairly large database. The .sql file has almost 1,000,000 lines in it. Problem is that I am getting a syntax error when trying to import the database. It says:
ERROR 1064 (42000) at line 8428420: 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 ‘
Fatal error: Maximum execution time of 600 seconds exceeded in
Normally I’d just open the .sql file and fix the error. But my computer is really struggling to open this file.
Is there any way I can ignore errors when importing a MySQL database?
A.L
9,9009 gold badges62 silver badges96 bronze badges
asked Jun 29, 2012 at 13:49
1
Use the --force (-f) flag on your mysql import. Rather than stopping on the offending statement, MySQL will continue and just log the errors to the console.
For example:
mysql -u userName -p -f -D dbName < script.sql
luchaninov
6,6056 gold badges58 silver badges75 bronze badges
answered Sep 10, 2014 at 17:21
Craig BoobarCraig Boobar
3,6611 gold badge10 silver badges3 bronze badges
2
Некоторые типы ошибок в работе с базой данных MySQL при импорте или экспорте базы данных.
Ошибка 1
При экспорте MySQL через phpMyAdmin возникала ошибка, которая приводила к невозможности выполнить сохранение база данных. Причина была в испортившихся таблицах, из-за которой и возникала ошибка.
Ошибка была следующего вида:
Не удалось создать резервную копию базы данных. Процесс завершился с ошибкой: ‘mysqldump: Got error: 1146: Table ‘site.wp_subscribe_reloaded_subscribers’ doesn’t exist when using LOCK TABLES
Решение
Через SSH зайти на VDS.
Использовать команду:
mysqlcheck -u MySQL_name -p MySQL_user_name
Ввести пароль от базы данных.
У меня был выведен список всех таблиц, где несуществующая таблица была показана с ошибкой. В самой базе данных MySQL её не было, а phpMyAdmin на неё все равно ругался.
MySQL_name.wp_statpress OK
MySQL_name.wp_subscribe_reloaded_subscribers
Error : Table ‘MySQL_name.wp_subscribe_reloaded_subscribers’ doesn’t exist
status : Operation failed
MySQL_name.wp_term_relationships OK
Ввести команду (подтвердить паролем):
Появится такая строка:
Нужно выбрать базу данных:
Показать таблицы в ней (Точка с запятой обязательна!):
Будут показаны все таблицы.
После этого удалил таблицу:
drop table wp_subscribe_reloaded_subscribers;
Появилась ошибка:
ERROR 1051 (42S02): Unknown table ‘wp_subscribe_reloaded_subscribers’
но при этом она была удалена и больше нигде не отображалась, а экспорт заработал.
Ошибка 2
Сообщение об ошибки возникло на CentOS с ISPmanager.
При создании базы данных с именем, которое когда-то существовало, возникала ошибка:
«Имя базы уже существует»
Имя базы было в таблице db в системной базе MySQL. Удаление записи оттуда решило эту проблему.
Ошибка 3
При импорте базы данных возникала следующая ошибка:
#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 ‘…..sql’ at line 1
В архиве базы данных находилось несколько файлов. Надо было разархивировать архив и заархивировать только файл базы данных.
Ошибка 4
You probably tried to upload a file that is too large. Please refer to documentation for a workaround for this limit.
Решение приведено статье ошибка при импорте в phpMyAdmin.
-

Offline
DKraev
<i>(aka gft)</i>
=> Cпециалист <=- Регистрация:
- 16.08.2008
- Сообщения:
- 1 627
- Симпатии:
- 219
- Пол:
- Мужской
Приветствую всех. За время моего пребывания на данном форуме довольно часто возникали вопросы по ошибкам при импорте/экспорте базы данных MySQL (далее БД).
Вопросы примерно такие:
- После переноса (импорта) БД на хостинг на сайте сбилась кодировка. На локальном сайте все нормально;
- При переносе (импорте) БД возникает ошибка #1064 или другая;
- Пропадает текст после переноса (импорта) БД.
- Как перенести базу с Denwer на хостинг (или наоборот)
- и т.д
Прежде чем публиковать подобный вопрос на форуме, настоятельно рекомендую прочитать данный пост полностью, и что самое главное — СДЕЛАТЬ все что здесь написано.
Большинство ошибок возникает именно из-за неправильного переноса, поэтому я опишу импорт/экспорт БД при помощи скрипта Sypex Dumper. Я буду описывать работу с Lite версией, с которой я успешно работаю уже больше трех лет. Хотел бы заметить что подобной информации полно в сети, однако у нас на форуме её нет. А так как большинство новичков при любой проблеме сразу идут сюда, а не в Google, то я решил написать этот небольшой мануальчик. Многим он поможет решить проблемы с переносом БД, а старожилов форума избавит от необходимости писать про Sypex Dumper снова и снова

В первую очередь скачиваем скрипт отсюда (utf-8, архив прикреплен к посту) либо с сайта разработчика (cp1251). Распаковываем архив. На выходе получим два файла — readme.txt (инструкция) и dumper.php (сам скрипт).
Экспорт БД с локального компьютера.
Я работаю на Denwer, но и для других должно быть точно так же по идее.
- Копируете файл dumper.php в корень сайта.
- Создаете новую папку, которую называете backup
- Набираете в браузере: www.adres_sayta.ru/dumper.php
- Вводите логин пользователя и пароль для базы данных, нажимаете «Применить»
- Чекбокс на «Backup/Создание резервной копии БД». Фильтр таблиц — оставляете пустым. Метод сжатия — GZip. Степень сжатия — 7. Нажимаете «Применить»
Наблюдаем, как весело бегут строчки вверх. Ваш дамп готов! Зайдите в ранее созданную папку backup, вы увидите архив примерно такой — amurka_2010-08-20_23-30.sql.gz — это и есть дамп БД.
Импорт БД на хостинг.
- Заливаете файл dumper.php в корень сайта на хостинг.
- Заливаете папку backup тоже в корень сайта. Права на папку — 777. Так же внутри данной папки будет лежать файл dumper.cfg.php — для него тоже выставляете 777
- Набираете в браузере: www.adres_sayta.ru/dumper.php
- Вводите логин пользователя и пароль для базы данных, нажимаете «Применить»
- Чекбокс на «Restore / Восстановление БД из резервной копии». БД — выбираете базу данных на хостинге. Файл — выбираете наш файл с дампом (пример — amurka_2010-08-20_23-30.sql.gz). Нажимаете «Применить».
Наш дамп имортируется на хост.
Перенос с хостинга на локалку выполняется аналогичным образом. Держать дампы на хостинге не рекомендую.
Ошибки.
Многие могут столкнуться с ошибкой «#2005: Unknown MySQL server host ‘имя’ (11004)» при импорте БД на хостинг. Это говорит о том, что неверно указан MySQL сервер. В dumper.php по умолчанию указан «localhost», на хостинге же может быть любой. Например — p1543.mysql.ihc.ru
Откройте файл dumper.php и в 34 строке найдите код:
-
define(‘DBHOST’, ‘localhost:3306’);
Вместо localhost:3306 впишите MySQL сервер вашего хостинга. Сохраните файл. Повторите попытку импорта.
———————————————-Несколько раз у меня не получалось залить базу на хост при помощи этого скрипта. Но это была проблема хостера. Решалось выставлением CHMOD 777 на папку www
———————————————-Я не рассматривал дополнительные настройки данного скрипта (кстати их довольно много). Данный мануал рассчитан на новичков, которые испытывают проблемы при переносе БД. Того что я написал достаточно для успешного переноса БД в 90% случаев. За более полной информацией — на сайт разработчика, либо в Google.
Вложения:
Последнее редактирование: 17.09.2010
-

Offline
woojin
Местный
Команда форума
=> Cпециалист <=- Регистрация:
- 31.05.2009
- Сообщения:
- 3 206
- Симпатии:
- 334
- Пол:
- Мужской
«+» тебе за описание
я приведу свой пример, немного по другому, но принцип то же
1. открываем phpMyAdmin
2. делаем дамп базы
3. потом в получевшемся файлике ищем такую строкуENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1, нас интересует выделенный фрагмент — эта строчка обычно идёт после функции создания таблицы т.е. CREATE TABLE IF NOT EXISTS
4. если не ясно в какой кодировке должна быть таблицы то этот выделенный фрагмент удаляем везде где он есть, сохраняем получившийся файл
5. импортируем дамп в другую базуP.S. если всё равно кякозяблики, то просто пере сохраняем файл с дампом в другой кодировке — меня этот метод ни когда ещё не подводил
-

Offline
mcsweb
Недавно здесь
- Регистрация:
- 25.01.2010
- Сообщения:
- 10
- Симпатии:
- 0
- Пол:
- Мужской
А вот нифига phpMyAdmin не вышло.
Ради науки решил перекинуть сайт с одного локального сервера на другой.
С ХАМРР на Денвер.
Как бы я не делал экспорт базу данных на ХАММРе в Денвере он не принимался.
В конце концов просто скопировал папку с таблицами с одного сервака на другой.
В результате сайт работает с ошибками.Буду пробовать скрипт от первого советчика.
Попробовал- результат тот же .
Хотя дампер.пхп отработал отлично.
Виднео что то в денвере не так совмещаетсяПоследнее редактирование: 23.08.2010
-

Offline
woojin
Местный
Команда форума
=> Cпециалист <=- Регистрация:
- 31.05.2009
- Сообщения:
- 3 206
- Симпатии:
- 334
- Пол:
- Мужской
интересно по чему не сработал ни один ни второй вариант?!
есть вариант воспользоваться компонентом http://www.akeebabackup.com/ это следующая версия joomlapack
в описании почитай про совместимость компонента с версиями php
-
Offline
VashMaster
Недавно здесь
- Регистрация:
- 19.08.2010
- Сообщения:
- 19
- Симпатии:
- 1
- Пол:
- Мужской
Тоже всегда делаю всё аналогично посту ТС. Пользуюсь утилиткой дампер. Проблем обычно не было. Но вот при переносе сайта на Joomla почему-то появились

Сделал дамп, потом этим же дамперов восстановил дамп. Но всё равно появились кракозябры.
Проблему удалось решить только с помощью добавления команды:-
mysql_query(«SET NAMES cp1251»);
в файле index.php на фронт энде и бекенде. Добавил после вызова функции
-
$mainframe->initialise();
Получилось примерно так:
-
$mainframe->initialise();
-
mysql_query(«SET NAMES cp1251»);
Только тогда всё стало ОК. Если не поможет, то, возможно, у вас используется кодировка UTF. Пробуйте…
p.s. При работе с «дампером» редко бывают проблемы с кодировкой, но вот случилось
Видимо, я не зря недолюбливаю Джумлу 
-

Offline
DKraev
<i>(aka gft)</i>
=> Cпециалист <=- Регистрация:
- 16.08.2008
- Сообщения:
- 1 627
- Симпатии:
- 219
- Пол:
- Мужской
Модераторы, закрепите тему. Подобные вопросы продолжают сыпаться. До второй страницы (куда уже спустилась эта тема) пользователям дочитывать уже лень… По всей видимости что такое поиск они тоже не знают…
-
Offline
Владимир.
Недавно здесь
- Регистрация:
- 25.02.2011
- Сообщения:
- 1
- Симпатии:
- 0
- Пол:
- Мужской
Не хотел ставиться русский язык, вылезали кракозябры. Как я только не пересохранял файлы и базы ничего не помогало… Снес снова все и сделал по главной инструкции через Sypex и чудо таки случилось!!!

Хочу добавить:
При создании на локальном компьютере дампа используем логин и пароль базы данных, созданной в самом начале. (не путать с логином для входа в админку джумлы)
При запуске на хостинге необходимо указать логин и пароль к базе данных, лежащей у хостера.
Дальше необходимо просто перенести все файлы с локального компьютера на сервер хостера и поправить файл configuration.php
А еще у меня возник вопрос относительно приключений с кодировками…
Не может ли сама операционка выдавать эти сюрпризы?
Когда я первый раз заливал этот же сайт на хостинг у меня все прошло гладко и не возникло проблем.
После того как сайт сломали, я переустановил винду, денвер и джумлу на 1.5.22. Вот и думаю, что именно повлияло на неправильное отображение символов… -

Offline
DKraev
<i>(aka gft)</i>
=> Cпециалист <=- Регистрация:
- 16.08.2008
- Сообщения:
- 1 627
- Симпатии:
- 219
- Пол:
- Мужской
Не знаю, работал и на XP и на семёрке — проблем не возникало. Но может быть потому что я всегда пользуюсь Sypex… Чаше всего траблы вылезают именно на хостинге… НА локалке, как уже сказал, всегда всё ровно…
-
Offline
oceay
Недавно здесь
- Регистрация:
- 12.09.2011
- Сообщения:
- 1
- Симпатии:
- 0
- Пол:
- Мужской
Спасибо огромное, gft !!!! Сначала многое кажется непонятным, но начинаешь делать согласно инструкции и всё получается само собой. Ещё раз спасибо!
-

Offline
woojin
Местный
Команда форума
=> Cпециалист <=- Регистрация:
- 31.05.2009
- Сообщения:
- 3 206
- Симпатии:
- 334
- Пол:
- Мужской
это ты админу отправь, я не могу этого сделать!!!
Поделиться этой страницей
Битые символы в базе данных образуются, в большинстве случаев, из-за несовпадения кодировок в файле источнике, клиенте БД или таблице БД. Пройдемся по проблемным местам, один из пунктов ниже обычно помогает решать проблемы с «кракозябрями».
1. Файл-источник данных.
С этим пунктом все просто, текстовые данные в файле нужно хранить в utf8. Проверить кодировку можно в большинстве популярных IDE, например, в PhpStorm или текстовом редакторе наподобие Notepad++.
Если нет прямого доступа к БД, то в файл-источник данных следует прописать:
SET NAMES 'utf8' COLLATE 'utf8_general_ci'; -- Для utf8
или
SET NAMES 'utf8mb4' COLLATE 'utf8mb4_general_ci'; -- Для utf8mb4
2. Кодировка и формат сопоставления данных в таблице.
Вероятнее всего вы используете utf8 (он же utf8mb3) или utf8mb4 для хранения данных в MySql. Поэтому при создании таблиц желательно напрямую указывать это, т.к. не всегда общие настройки БД разрешается менять.
Для utf8:
CREATE TABLE `example_table` ( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, example_field VARCHAR(255) NOT NULL ) CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB;
Для utf8mb4:
CREATE TABLE `example_table` ( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, example_field VARCHAR(255) NOT NULL ) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE=InnoDB;
3. Импорт данных из файла-источника.
При импорте тоже желательно указывать кодировку.
Для utf8:
mysql -u USER_NAME -p --default-character-set=utf8 DB_NAME < SOURCE_FILE.sql
Для utf8mb4:
mysql -u USER_NAME -p --default-character-set=utf8mb4 DB_NAME < SOURCE_FILE.sql
4. Веб-интерфейсы.
Иногда требуется заполнять БД из веб-интерфейсов и в этом случае стоит проверять отправляемую кодировку с сервера в заголовках и HTML-коде.
HTML:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
PHP:
header('Content-Type: text/html; charset=utf-8');
Полезные команды
Отображение форматов сопоставления данных в MySql:
SHOW VARIABLES LIKE 'collation%';
Отображение настроек кодировок:
SHOW VARIABLES LIKE 'character%';
Видимо не правильно вставляю в код — ошибка остается.
Могли бы Вы указать куда именно
Спасибо!
Это часть кода:
— phpMyAdmin SQL Dump
— version 2.6.1
— http://www.phpmyadmin.net
—
— Хост: localhost
— Время создания: Июн 18 2009 г., 13:30
— Версия сервера: 5.0.45
— Версия PHP: 5.2.4
—
— БД: `project`
—
— ———————————————————
—
— Структура таблицы `jos_banner`
—
CREATE TABLE `jos_banner` (
`bid` int(11) NOT NULL auto_increment,
`cid` int(11) NOT NULL default ‘0’,
`type` varchar(30) NOT NULL default ‘banner’,
`name` varchar(255) NOT NULL default »,
`alias` varchar(255) NOT NULL default »,
`imptotal` int(11) NOT NULL default ‘0’,
`impmade` int(11) NOT NULL default ‘0’,
`clicks` int(11) NOT NULL default ‘0’,
`imageurl` varchar(100) NOT NULL default »,
`clickurl` varchar(200) NOT NULL default »,
`date` datetime default NULL,
`showBanner` tinyint(1) NOT NULL default ‘0’,
`checked_out` tinyint(1) NOT NULL default ‘0’,
`checked_out_time` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`editor` varchar(50) default NULL,
`custombannercode` text,
`catid` int(10) unsigned NOT NULL default ‘0’,
`description` text NOT NULL,
`sticky` tinyint(1) unsigned NOT NULL default ‘0’,
`ordering` int(11) NOT NULL default ‘0’,
`publish_up` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`publish_down` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`tags` text NOT NULL,
`params` text NOT NULL,
PRIMARY KEY (`bid`),
KEY `viewbanner` (`showBanner`),
KEY `idx_banner_catid` (`catid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
—
— Дамп данных таблицы `jos_banner`
—
— ———————————————————
—
— Структура таблицы `jos_bannerclient`
—
CREATE TABLE `jos_bannerclient` (
`cid` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL default »,
`contact` varchar(255) NOT NULL default »,
`email` varchar(255) NOT NULL default »,
`extrainfo` text NOT NULL,
`checked_out` tinyint(1) NOT NULL default ‘0’,
`checked_out_time` time default NULL,
`editor` varchar(50) default NULL,
PRIMARY KEY (`cid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
—
— Дамп данных таблицы `jos_bannerclient`
—
— ———————————————————
—
— Структура таблицы `jos_bannertrack`
—
CREATE TABLE `jos_bannertrack` (
`track_date` date NOT NULL,
`track_type` int(10) unsigned NOT NULL,
`banner_id` int(10) unsigned NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
—
— Дамп данных таблицы `jos_bannertrack`
—
— ———————————————————
—
— Структура таблицы `jos_categories`
—
CREATE TABLE `jos_categories` (
`id` int(11) NOT NULL auto_increment,
`parent_id` int(11) NOT NULL default ‘0’,
`title` varchar(255) NOT NULL default »,
`name` varchar(255) NOT NULL default »,
`alias` varchar(255) NOT NULL default »,
`image` varchar(255) NOT NULL default »,
`section` varchar(50) NOT NULL default »,
`image_position` varchar(30) NOT NULL default »,
`description` text NOT NULL,
`published` tinyint(1) NOT NULL default ‘0’,
`checked_out` int(11) unsigned NOT NULL default ‘0’,
`checked_out_time` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`editor` varchar(50) default NULL,
`ordering` int(11) NOT NULL default ‘0’,
`access` tinyint(3) unsigned NOT NULL default ‘0’,
`count` int(11) NOT NULL default ‘0’,
`params` text NOT NULL,
PRIMARY KEY (`id`),
KEY `cat_idx` (`section`,`published`,`access`),
KEY `idx_access` (`access`),
KEY `idx_checkout` (`checked_out`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
—
— Дамп данных таблицы `jos_categories`
—
INSERT INTO `jos_categories` VALUES (1, 0, ‘Администраторы’, », ‘2009-04-09-12-50-24’, », ‘com_contact_details’, ‘left’, », 1, 0, ‘0000-00-00 00:00:00’, NULL, 1, 0, 0, »)
I am trying to import a .sql file in to my local database. whenever i type the command to import the file, I get an error ERROR at line 1: Unknown command 'S'.
This is the first line of the sql file update product set aka = 'Trojan.gen,Backdoor.Win32.Agent.bisn' where id = 156701
![]()
asked May 8, 2012 at 2:57
5
Since you have an ASCII file, the script could be giving problems because it is came from a Windows machine and you are attempting to load it into mysql on a Linux machine.
You may want to try one of two things:
- Using the mysql client in Windows, load the data remotely.
- Use sql client in raw mode in one of two ways
mysql -hIP -r -uroot -p DN_name < filename.sqlmysql -hIP -B -uroot -p DN_name < filename.sql
answered May 8, 2012 at 22:16
![]()
RolandoMySQLDBARolandoMySQLDBA
177k32 gold badges307 silver badges505 bronze badges
1
I think you need to use path/to/file.sql instead of pathtofile.sql
and «database < path/to/file.sql» didn’t work for me for some reason — I had to use «use database;» and «source path/to/file.sql;«.
![]()
Eran
2392 silver badges5 bronze badges
answered Dec 14, 2014 at 23:53
I am trying to import a .sql file in to my local database. whenever i type the command to import the file, I get an error ERROR at line 1: Unknown command 'S'.
This is the first line of the sql file update product set aka = 'Trojan.gen,Backdoor.Win32.Agent.bisn' where id = 156701
![]()
asked May 8, 2012 at 2:57
5
Since you have an ASCII file, the script could be giving problems because it is came from a Windows machine and you are attempting to load it into mysql on a Linux machine.
You may want to try one of two things:
- Using the mysql client in Windows, load the data remotely.
- Use sql client in raw mode in one of two ways
mysql -hIP -r -uroot -p DN_name < filename.sqlmysql -hIP -B -uroot -p DN_name < filename.sql
answered May 8, 2012 at 22:16
![]()
RolandoMySQLDBARolandoMySQLDBA
177k32 gold badges307 silver badges505 bronze badges
1
I think you need to use path/to/file.sql instead of pathtofile.sql
and «database < path/to/file.sql» didn’t work for me for some reason — I had to use «use database;» and «source path/to/file.sql;«.
![]()
Eran
2392 silver badges5 bronze badges
answered Dec 14, 2014 at 23:53