Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 11497|Ответ: 0

[Источник] mysql #1062 – Дублирующая запись '1' для ключа 'PRIMARY'

[Скопировать ссылку]
Опубликовано 15.11.2017 13:22:06 | | |

В последнее время я выбрасываю VPS, и только что наткнулся на случай, когда импортировал базу данных в процессе переноса WordPress. Я встретил

#1062 – Дублирующая запись '1' для ключа 'PRIMARY'

В тот момент я спешил, я удалил все исходные данные и не имел другого выбора, кроме как обратиться к всемогущему Байду. Я искал почти весь день и наконец нашёл его для себя. Взволнован, тестируй сразу, О(∩_∩)О хаха~ Успех.

Теперь прилагается решение — просто удалить исходные старые данные и импортировать их.

Я не понимаю принципа, так что посмотрите сами. В любом случае, достичь цели — это нормально.

«Совет #1062 – дублирует запись '1′ для ключа 'PRIMARY', позже я выяснил, что в прошлый раз, когда лимит был превышен, был импортирован частично, и id — это основной ключ, он не может быть одинаковым, поэтому он не сработает, удаляйте все старые данные, и вы можете перенаправить.»

Я также хотел бы поблагодарить блогера за публикацию решения. Иначе у меня будут проблемы.»

Исходный текст

Проблема, с которой столкнулся сегодня, очень проста, но также очень распространена, и я запишу её здесь:
Импортирую данные с одного компьютера на другой, так что записей слишком много, сначала я не обращал внимания, превысил лимит phpmyadmin, запрос был неверным, я вручную разделил файл на несколько маленьких файлов, но потом появился запрос #1062 — дублирует запись '1' для ключа' PRIMARY', и позже выяснилось, что последний раз, когда лимит был превышен, был частично импортирован, и id — это первичный ключ, который не может быть одинаковым, поэтому это невозможно, удалять все старые данные и перенаправлять.

Хорошо. Если у вас такая же проблема, как у меня, попробуйте сейчас. Не знаю, если не попробую


MySQL выполняет резервное копирование данных, восстанавливает и отвечает, и появляется следующий код ошибки:
Дискуз! Информация: Ошибка запроса MySQL

User: webcull
Time: 2008-7-10 2:20pm
scrip{filter}t. /post.php

SQL: INSERT INTO [Table]posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, anonymous, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment)
ЗНАЧЕНИЯ ('45', '2727', '0', 'webcull', '6', '', '1216707030', 'ddd', '192.168.253.1', '0', '0', '0', '0', '-1', '-1', '', '0')
Error: Duplicate entry '2678' for key 1
Errno.: 1062


Причины для анализа онлайн-поиска:
Возможно, что PID поля является первичным ключом и атрибутом auto_increment, и дублирующихся значений не должно быть.
И когда я делал резервную копию данных, возможно, запись данных сломала таблицу данных.


Попробовал несколько методов:
1. Отсутствуют некоторые атрибуты полей таблицы данных ALTER TABLE 'cdb_posts' CHANGE 'pid' 'pid' int( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT
2、Repair table cdb_posts
Все провалились!


Окончательное решение:
Обычно это вызвано повреждением файлов таблицы данных, которое можно исправить с помощью инструмента восстановления MySQL myisamchk tool.
CMD
myisamchk cdb_posts.myi -r
Исправьте даташит — и всё готово!




Предыдущий:Июль 2017 WIN7\XP· Скачайте энциклопедию системы GHOST! Обновления продолжаются, захватывающе!
Следующий:Научить вас использовать Myisamchk для восстановления после сбоев MySQL
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com