Mysql deadlock debug etme

PhpUnit testlerini çalıştırırken testler anlamsız bir şekilde donup kalıyorudu. Mysql’i restart ettiğimde testlerin çalışmaya devam ettiğini farkettim. (Testlerin hepsi mysql gone away hatası vererek sonlanmıştı) Böylece sorunun MySql kaynaklı olduğundan emin oldum. Bir yerlerde açılan transaction kapanmadığından deadlock oluşuyordu. Deadlock ile ilgili ayrıntılara erişmek için aşağıdaki komutu kullandım.

Aldığım çıktıdan en son lock olan […]

MySQL sorgularında birebir eşleştirme

Tablonuzda label isminde bir alan olduğunu varsayalım. Bu alanın COLLATE değeri utf8_general_ci veya utf8_unicode_ci olsun. Tabloda sadece label değeri ‘Ş’ olan tek bir kaydınız varsa ve WHERE label = ‘S’ şeklinde arama yaparsanız MySQL sonuç olarak olarak ilgili kaydı döndürecektir. Bunun önüne geçmek için ilgili alanın COLLATE değerini utf8_bin şeklinde ayarlamanız gerekmektedir. Böylece ilgili aramayı […]