Восстанавливается архив, и вылетает эта ошибка:
Duplicate entry '900829' for key 1
Больше ничего не написано, не пойму что не так.
Duplicate entry '900829' for key 1
Больше ничего не написано, не пойму что не так.
08.08.2010 02:46:04
Восстанавливается архив, и вылетает эта ошибка:
Duplicate entry '900829' for key 1 Больше ничего не написано, не пойму что не так. |
|
|
|
08.08.2010 13:02:20
Может попробовать сделать запрос а файлы просто скопировать?
|
|
|
|
08.08.2010 15:28:34
Обычно такую ошибку можно получить, если кодировка базы/таблицы/дампа не совпадают.
Проверьте с какой кодировкой создаются таблицы и в какой кодировке заливаемый дамп....
/истина где-то рядом....
|
|
|
|
08.08.2010 19:13:25
|
|||
|
|
08.08.2010 19:28:50
Про команду в комстроке mysql не скажу, но в phpmyadmin это посмотреть можно в списке таблиц в базе....
/истина где-то рядом....
|
|
|
|
08.08.2010 21:32:03
Вообще узнал, кодировки баз совпадают.
|
|
|
|
09.08.2010 12:44:49
Сделал резервное копирование бд на самом хостинге. Залил сайт отдельно, попросил тех поддержку восстановить бд, тех поддержка сказала что файл с ошибками. Как может рабочая бд быть с ошибками? Думаю поэтому и штатное восстановление битрикса не работает, как и копирование.
|
|
|
|
09.08.2010 14:12:34
|
|
|
|
09.08.2010 15:44:44
А посмотрите что за строки в файле дублируются. Такое может быть например если дамп делается в неверной кодировке, и два разных значения из уникального текстового поля превращаются в одно, например в пустую строку или "?????".
Экс-битриксоид.
Компонент (и.с.) - существительное мужского рода (ГОСТ 34.003-90). |
|
|
|
09.08.2010 16:22:44
Артур, в вашем случае произошла, похоже другая ситуация.
Дело в том, что создание дампа делается по шагам. По всей видимости, у вас изменилась база данных между шагами, в результате одна и та же запись попала в дамп дважды. Просто откройте файл дампа базы в редакторе и удалите дублирующую запись. |
|
|
|
09.08.2010 16:45:23
Артур Глазов, Подобная ошибка рассмотрена в FAQ: |
|||
|
|
09.08.2010 17:45:17
Артур, создайте обращение в тех. поддержку, в нём предоставьте все требующиеся для распаковки резервной копии доступы, мы постараемся помочь.
P.S. В теме обращения сделайте пометку, что обращение для меня. |
|
|
|
07.02.2012 18:39:02
Почти 2 недели потратил на восстановление сайта, борясь с кучей ошибок при запуске restore.php. Перелопатил кучу форумов и т.д. В итоге написал небольшую инструкцию для восстановления сайта. Буду рад, если она кому-то поможет)
Перенос сайта в БИТРИКС 1. Создаём в Битрикс полную резервную копию (ядро+контент) 2. Скачиваем и помещаем в каталог denwerа в Z:\home\localhost\www 3. В тот же каталог помещаем файл restore.php (копируем файл со страницы с созданием бекапа). 4. В файле my.cnf по адресу Z: \usr\local\mysql-5.1\my.cnf меняем его содержимое на: # +-------------------------------------------------------------------------+ # | Джентльменский набор Web-разработчика | # | Версия: Денвер-3 2010-11-07 | # +-------------------------------------------------------------------------+ # | Copyright © 2001-2010 Дмитрий Котеров. | # +-------------------------------------------------------------------------+ # | Данный файл является частью комплекса программ "Денвер-3". Вы не можете | # | использовать его в коммерческих целях. Никакие другие ограничения не | # | накладываются. Если вы хотите внести изменения в исходный код, авторы | # | будут рады получить от вас комментарии и замечания. Приятной работы! | # +-------------------------------------------------------------------------+ # | Домашняя страница: # | Контакты: # +-------------------------------------------------------------------------+ ## ## Конфигурация MySQL, не очень требовательная к системным ресурсам. ## # # Следующие параметры будут переданы всем клиентским программам # (например, mysql.exe). ВНИМАНИЕ: если не сработает, укажите # путь к my.cnf ЯВНО, например: # # mysql.exe --defaults-file=/usr/local/mysql-5.1/my.cnf ... # [client] port = 3306 socket = /tmp/mysql5.sock default-character-set = cp1251 character-sets-dir = /usr/local/mysql-5.1/share/charsets # # Параметры MySQL-сервера. # [mysqld] # Кодировка баз данных по умолчанию. default-character-set = cp1251 init-connect = "set names cp1251" skip-character-set-client-handshake # Временная директория. tmpdir = /tmp # # Обработывать запросы ТОЛЬКО с локальной машины (повышает безопасность). # Если вы хотите, чтобы MySQL-сервер был доступен из сети, # уберите следующую ниже директиву. # bind-address = 127.0.0.1 # Порт сервера. port = 3306 socket = /tmp/mysql5.sock lower-case-table-names = 2 # Различные настройки, оптимизированные для небольшого объема памяти. skip-locking key_buffer = 16K max_allowed_packet = 64M table_cache = 4 sort_buffer_size = 64K read_buffer_size = 256K read_rnd_buffer_size = 256K net_buffer_length = 2K thread_stack = 128K wait_timeout = 100000 # # Вообще не слушать TCP/IP порт. Это может служить для усиления # безопасности, если все процессы, работающие с демоном MySQL, запущены # на том же хосте. Однако при этом всё взаимодействие может проиходить # ТОЛЬКО через сокеты Unix или именованные каналы Windows (доступны лишь # в NT-версиях, при использовании mysqld-nt или mysqld-max-nt). Если # в Windows при этом НЕ включить опцию "enable-named-pipe", демон MySQL # станет бесполезен #skip-networking # См. коментарий выше #enable-named-pipe # Server ID. server-id = 1 # Раскомментируйте для журналирования UPDATE-запросов #log-bin # # Раскомментируйте следующие строки, если вы хотите изменить # настройки InnoDB по умолчанию. # #innodb_data_home_dir = /usr/local/mysql-5.1/var/ #innodb_data_file_path = ibdata1:10M:autoextend #innodb_log_group_home_dir = /usr/local/mysql-5.1/var/ #innodb_log_arch_dir = /usr/local/mysql-5.1/var/ # Вы можете установить .._buffer_pool_size размером до 50 - 80 % # оперативной памяти, но опасайтесь перерасхода #innodb_buffer_pool_size = 16M #innodb_additional_mem_pool_size = 2M # Устанавливайте .._log_file_size to 25 % от _buffer_pool_size #innodb_log_file_size = 5M #innodb_log_buffer_size = 8M #innodb_flush_log_at_trx_commit=1 #innodb_lock_wait_timeout = 50 [mysqldump] quick max_allowed_packet = 64M [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates [isamchk] key_buffer = 8M sort_buffer_size = 8M [myisamchk] key_buffer = 8M sort_buffer_size = 8M [mysqlhotcopy] interactive-timeout #--------------------------------------------------------------------------------- В этом файле нас больше всего интересуют параметры: max_allowed_packet = 64M – максимальный размер файла с запросом. По умолчанию стоит размер в 1М но для битрикса это мало, поэтому меняем на большое значение wait_timeout = 100000 – время ожидания ответа от mysql сервера (по умолчанию 28800) Если не изменить эти параметры, то будут возникать ошибки. Например, «server has gone away», т.е. сервер не отвечает. 5. В файле Z:\usr\local\php5\php.ini уберём комменты со следующих параметров и изменим их: mbstring.internal_encoding = UTF-8 – меняем кодировку на UTF-8 mbstring.func_overload = 2 – какой то параметр для работы со строками 6. Чтобы изменённые параметры вступили в силу необходимо перезапустить Denwer 7. Архив необходимо разархивировать с помощью TotalCommander 2 раза: сначала из *.gz в *.tar, а уже потом в обычные файлы. Если разархивирование запускать с помощью restore.php – сей файл споткнётся об Thumb.db, а тотал выведет сообщение и распакует архив должным образом. 8. Итак: файлы готовы, запускаем через браузер наш рестор: 9. Выбираем пункт «архив распакован…». Настраиваем подключение к базе вручную. Сервер: localhost Пользователь: root Пароль: Название базы: bitrix (можно и по-другому) И ставим галку «создать базу» если база ещё не создана. 10. И ждём до победного. Если восстановление базы зависнет – необходимо перезапустить. |
|
|
|
27.01.2014 17:42:57
|
||||
|
|
|||