سبد خرید
0

No products in the cart.

رفع مشکل خطای #۱۰۶۲ – Duplicate entry ‘1’ for key ‘PRIMARY در جوملا

رفع مشکل خطای #1062 - Duplicate entry '1' for key 'PRIMARY در جوملا

کاربران جوملایی و استفاده کنندگان از این سیستم مدیریت محتوا مواقعی برای آنها بوجود آمده که با خطای تکرار یا داپلیکیت و یا Duplicate شدن اطلاعات مواجه شده باشند. این ارور که عموما در زمان نصب افزونه یا قالب جدید و یا ایمپورت یک سری اطلاعات خاص ما در یک جدول خاص اتفاق می افتد. میتواند چند علت کلی داشته باشد که سبب بوجود آمدن این نوع خطا میگردد.

ساختار کلی خطا:

شکل های مختلف خطا:

علت های وقوع خطا:

این خطاها بطور عمومی نشان دهنده ی این موضوع هستند که دیتایی که با آیدی مشخص درحال Insert شدن در جدول دیتابیس موردنظر هست؛ از قبل دارای رکورد مشابهی با آیدی یکسان بوده و در حال حاضر به دلیل اینکه هر آیتم با یک شناسه یکتا در دیتابیس ذخیره میگردد امکان ایمپورت و ذخیره بیش از یک کورد با یک شناسه ثابت وجود ندارد و همانطور که در بالا مشاهده میکنید با خطای Duplicate entry پاسخ عملیات به نمایش گذاشته می شود. به عبارت دیگر و بر اساس خطای نمونه بالا در سایت جوملایی شما یکی از پلاگین ها از شناسه ۸۰۲ استفاده میکند که این آیدی متعلق به پلاگینهای هسته اصلی جوملا است (یا از قبل افزونه ی دیگری با این شناسه بروی سایت شما نصب گردیده است). به دلایلی SQL AUTO_INCREMENT 10000 در جدول #__extensions درست کار نمیکند. همه آیدی های زیر ۱۰۰۰۰ برای جوملا رزرو شده اند و پلاگین های نصب شده نباید از آیدی زیر ۱۰۰۰۰ استفاده کنند.

[quote]پیشنهاد ویژه: سامانه نوبت دهی اینترنتی پزشکان و مراکز درمانی[/quote]

راه حل :

پست پیشنهادی :  رفع خطای ذخیره ناموفق با خطای: TagsTableTag::_getNode(1, ) failed

همانطور که در بالا توضیح داده شد وقوع این خطا به دلیل درح مکرر در جدول دارای دیتای تکراری هست. برای مرتفع کردن این مسئله شرکت جوملا مونستر یک اسکپریت اختصاصی طراحی و آماده کرده است. میبایست ابتدا این اسکریپت را دانلود و بروی سایت خود آپلود نمایید و از طریق مرورگر اقدام به فراخوانی و اجرای آن کنید.

خب کار شروع میکنیم ابتدا از سایت خود یک بکاپ تهیه میکنیم.

[quote]قبل از انجام هر تغییر و اصلاحی ؛ لطفاً از سایت و دیتابیس خود یک نسخه بکاپ تهیه کنید.[/quote]

گام اول: در ابتدا فایل زیر را دانلود کنید:

دانلود اسکریپت اصلاح دیتابیس

گام دوم: پس از دانلود فایل فوق الذکر آنرا از حالت زیپ خارج کنید و فایل jmdbfix.php را در پوشه public_html در هاست خود آپلود نمایید.

گام سوم: پس از آپلود فایل مورد نظر ؛ همینک این فایل با آدرس http://SiteName.com/jmdbfix.php در دسترس شما قرار خواهد داشت.

گام چهارم: با اجرای اسکریپت بالا با صفحه ای مشابه تصویر زیر مواجه خواهید شد. در این لیست فهرستی مشاهده میکنید که در آن کلیه پلاگین های نصب شده بروی هسته جوملا و سایر الحاقات جانبی موجود بروی سایت جوملایی ایندکس شده اند. این فهرست شامل دو طیف پلاگین می باشد. فهرست پلاگین هایی که با رنگ سبز رنگ مشخص شده اند و جزو پلاگینهایی هستند که نیاز به بررسی جداول آن در دیتابیس وجود دارد و فهرست های قرمز رنگ جزو پلاگین های هسته ای و اصلی سیستم مدیریت محتوای جوملا هستند که نمیبایست در آنها تغییری ایجاد کنید.

پست پیشنهادی :  رفع مشکل خطای ۱۱۴۶ Table `updates` doesn't exist در جوملا

how-to-fix-1062-duplicate-entry-1-for-key-primary

گام پنجم: با توجه به تصویر بالا و خطایی که در ابتدا با آن مواجه بوده ایم. کاملا مشخص است که سیستم به پلاگین دارای آیدی ۸۰۲ که در اینجا با F0F NEW مشخص است، خطا دریافت کرده است.این تصویر یک لیست نمونه است. مطمئنا در زمان چک لیست شما ؛ فهرست دیگری متناسب با نوع پلاگین ها و افزونه های نصب شده بروی سایت خود مشاهده خواهید کرد.

how-to-fix-1062-duplicate-entry-1-for-key-primary

گام ششم: در این مرحله با فشردن دکمه Move پلاگینی که آیدی آن موجب ایجاد مشکل در عملکرد سایتمان شده است سعی میکنیم که شناسه آن را به مقادیر بالاتری افزایش دهیم که اینکار با استفاده از اسکریپتی که در بالا به آن اشاره شد انجام میشود. برای شروع دکمه Move را فشار دهید و منتظر بمانید تا صفحه لود شود. در صفحه جدیدی که مشاهده خواهید کرد؛ میبینید که دیگر فهرست از آیتم های سبزرنگ (قابل تغییر) وجود ندارد و همگی به رنگ قرمز یعنی پلاگین های هسته ای و داخلی جوملادر آمده اند و نیازی به اصلاح آنها وجود ندارد.

[quote]پیشنهاد ویژه: سایت آماده تهیه غذای خانگی خونه پز[/quote]

گام هفتم: در این مرحله با صفحه زیر روبرو می شوید که به شکل زیر خواهد بود. این صفحه نمایانگر این موضوع است که دیگر هیچ پلاگینی با آیدی نامناسب در سایت ما وجود ندارد و همه شناسه ها به شکل صحیح خود وجود دارند.

how-to-fix-1062-duplicate-entry-1-for-key-primary

گام هشتم: در این مرحله کار تمام است. در این لحظه میبایست فایل jmdbfix.php را از هاست و جوملا حذف کنید. سپس آخرین نسخه بروزرسانی جوملا را از این لینک دانلود و بروی سایت بریزید. سپس در نهایت از طریق منوی مدیریت جوملا » افزونه ها » مدیریت » پایگاه داده (دیتابیس) » تعمیر/بازسازی را کلیک کنید. 

how-to-fix-1062-duplicate-entry-1-for-key-primary

تبریک میگوییم این خطا هم بطور کامل مرتفع گردید.

امیدواریم که این آموزش برای شما مفید بوده باشد.

در صورت وجود هرگونه سوال میتوانید مسائل خود را بعنوان کامنت در همین پست ارسال نمایید.

آواتار
306

از سال 1388 وارد دنیای شگفت انگیز Open Source شدم. دوست دارم که تجارتی که در این مدت آموختم رو در اختیار دوستان خودم قرار بدم.

دیدگاه کاربران
  • علی 2 تیر 1399 / 9:17 بعد از ظهر

    سلام
    وقت بخیر
    من در وردپرس با این مشکل برخوردم
    Fatal error: Uncaught Exception: خطا در عمل ذخیره‌سازی:خطا در عمل ذخیره‌سازی:Duplicate entry ‘0’ for key ‘PRIMARY’
    in /home/dookmarketuser/domains/dookmarket.ir/public_html/wp-content/plugins/woocommerce/packages/action-scheduler/classes/migration/ActionScheduler_DBStoreMigrator.php on line 44
    لطفا راهنمایی کنید قالب من از افزونه دکان پیروی میکنه و وقتی ووکامرس رو فعال میکنم این مشکل پیش میاد
    در صورتی که قالب و تمام افزونه ها و وردپرس رو اپدیت کردم

    • آواتار
      حجت مردانه زاده 4 تیر 1399 / 8:29 قبل از ظهر

      باسلام خدمت شما دوست گرامی.
      خطای فوق مربوط به این هستش که در جدولی از دیتابیس رکورد ها به صورت تکراری و داپلیکیت ذخیره میشن درصورت تمایل به بررسی و رفع مشکل میتونید از طریق تیکت جزییات رو اعلام کنید تا مشکل مورد بررسی کامل قرار بگیره.
      ارسال تیکت پشتیبانی
      با تشکر از شما

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان