J3.x

J3.x:Yinelenen kullanıcı adları güncelleme sorunu

From Joomla! Documentation

Revision as of 16:40, 11 April 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎Ελληνικά

Bazı web sitelerinde, Joomla 3.9.16 sürümüne güncelleme, yinelenen kullanıcı adları nedeniyle bir veritabanı hatasına neden olur. Bunun için panik yapmayın - yükseltme çoğunlukla sorunsuz bir şekilde tamamlanmıştır ve her zamanki gibi çalışır, kalan veritabanı değişikliği aşağıdaki talimatları izledikten sonra uygulanabilir.

Bildirilen hatalar

Kullanıcılar, sitelerinde yinelenen bir anahtar nedeniyle başarısız bir veritabanı sorgusu ile ilgili bir güncelleme hatası alır #__users 3.9.15 veya daha yeni bir sürümden yükseltme yaparken tablo.

Joomla 3.9.16 Upgrade Error

Etkilenen sürümler

Genel Bilgi

Bu sadece Joomla! sürüm(leriyle) ilgilidir: 3.9.16

Nedeni nedir

Web sitenizde birden fazla kullanıcı var #__users aynı kullanıcı adına sahip bir tablodur, bu da yanlış hesaba yanlış hesap sahibi tarafından erişilebilmesinden kaynaklanan bir güvenlik hususudur.

Nasıl düzeltilir

İncelemeniz gerekecek #__users ve eski kullanıcı hesaplarını kaldırarak veya tüm kullanıcı adları benzersiz olana kadar kullanıcı adını değiştirerek yinelenen kullanıcı adlarını düzeltin. Bu işlem tamamlandıktan sonra, yükseltmeyi tamamlamak için veritabanı şeması düzeltme aracını 3.9.16'ya yükselttiyseniz (yükseltme işleminden önce bu incelemeyi yaparsanız bu adım gerekli değildir).

Joomla, gerçekleştirilecek doğru eylemi otomatik olarak belirleyemez ve sonuç olarak bu adımı sizin için gerçekleştiremez - site sahibi olarak sizin tarafınızdan düzeltilmelidir.

Hangi kullanıcı adlarının çoğaltıldığını görüntülemek için veritabanınızda aşağıdaki SQL Sorgusu çalıştırılabilir:

SELECT username FROM #__users GROUP BY username HAVING COUNT(*) > 1

One possible way to make resolving this simpler might be to remove all users who have never visited the site. Though this should be done with care, and ensure to backup the table first. After running this query, you can check again how many duplicate users you have.

DELETE FROM #__users WHERE lastvisitDate = "0000-00-00 00:00:00"