Son zamanlarda zaman aşımına uğramış bazı temel güncellemeleri görüyorum ve nedenini belirleyemedim. Bir örnek:
// # Sorgu_zamanı: 51 Kilit_zamanı: 0 Satır_sayısı: 0 Satır_ayrıca: 0
UPDATE
photos
SET position = position + 1 WHERE (photo_album_id = 40470);
Aynı günlük Lock_time> 0 ile giriş içermiyor. Çalışırken show innodb status
ilgili kilitler de gösterilmiyor. Bu sorun, uygulama sunucusu günlüklerime ( Mysql::Error: Lock wait timeout exceeded
mysql-slow log'da karşılık gelen her girişle ilgili bir hata gösteren) dayalı en az 5 farklı tabloyu etkiliyor gibi görünüyor .
Buradan nereye gidileceğine dair bir fikrin var mı? Her yöne çıkmaz sokaklar vuruyorum. Teşekkürler.
DÜZENLE:
TABLO `fotoğraflar` OLUŞTUR ( `id` int (11) NULL DEĞİL auto_increment, `type` varchar (255) BOŞ DEĞİL, `photo_album_id` int (11) BOŞ DEĞİL, `user_id` int (11) BOŞ DEĞİL, `title` varchar (255) varsayılan 'Adsız', "açıklama" metni, `credit` varchar (255) varsayılan NULL, `photo_file_name` varchar (255) varsayılan NULL, "photo_content_type` varchar (255) varsayılan NULL, `photo_file_size` int (11) varsayılan NULL, `photo_updated_at` datetime varsayılan NULL, `pozisyon` int (11) varsayılan '0', `views` int (11) varsayılan '0', `klasör` varchar (255) varsayılan NULL, `` tinyint (1) varsayılan '0' yayınlandı, `yayımlandı_t` datetime varsayılan NULL, `created_at` datetime varsayılan NULL, `updated_at` datetime varsayılan NULL, `album_published` tinyint (1) varsayılan '0', `comment_count` int (11) varsayılan '0', `audio_file_name` varchar (255) varsayılan NULL, `audio_content_type` varchar (255) varsayılan NULL, `audio_file_size` int (11) varsayılan NULL, `audio_updated_at` datetime varsayılan NULL, `kapak` tinyint (1) varsayılan '0', `slug` varchar (255) varsayılan NULL, `comments_count` int (11) varsayılan '0', `delete_from_s3` tinyint (1) varsayılan '0', `batch`t int (11) varsayılan NULL, `ses` varchar (255) varsayılan NULL, BİRİNCİL ANAHTAR (`id`), KEY `index_photos_on_album_published` (` album_published`), ANAHTAR `index_photos_on_batch` (` batch`), ANAHTAR `index_photos_on_comment_count` (` comment_count`), ANAHTAR `index_photos_on_created_at` (` oluşturulan_at`), ANAHTAR `index_photos_on_delete_from_s3` (` delete_from_s3`), ANAHTAR `index_photos_on_photo_album_id` (` photo_album_id`), ANAHTAR `index_photos_on_published` (` yayınlandı`), ANAHTAR `index_photos_on_published_at` (` yayımlandı_at`), ANAHTAR `index_photos_on_type` (` tür '), ANAHTAR `index_photos_on_user_id` (` user_id`) ) MOTOR = InnoDB AUTO_INCREMENT = 42830 VARSAYILAN CHARSET = utf8
UPDATE table SET <field>=<field>+1 WHERE <pk_field>=1;
Masam çok daha basit. Rastgele bu, aldığınız hataya neden olur. Sürümüm: 5.1.39. Bugün anlamaya çalışırken biraz zaman harcıyorum, bu yüzden bir şey bulursam güncelleyeceğim