Gần đây tôi đã thấy một số cập nhật rất cơ bản và không thể xác định nguyên nhân. Một ví dụ:
// # Query_time: 51 Lock_time: 0 Rows_sent: 0 Rows_examined: 0
UPDATE
photos
SET position = position + 1 WHERE (photo_album_id = 40470);
Nhật ký tương tự không có mục nào có Lock_time> 0. Chạy show innodb status
cũng không tiết lộ bất kỳ khóa liên quan nào. Vấn đề này dường như ảnh hưởng đến ít nhất 5 bảng khác nhau dựa trên nhật ký máy chủ ứng dụng của tôi (hiển thị Mysql::Error: Lock wait timeout exceeded
lỗi liên quan đến từng mục tương ứng trong nhật ký chậm mysql).
Bất cứ ý tưởng về nơi để đi từ đây? Tôi đang đi vào ngõ cụt theo mọi hướng. Cảm ơn.
BIÊN TẬP:
TẠO BẢNG `ảnh` ( `id` int (11) KHÔNG NULL auto_increment, `type` varchar (255) KHÔNG NULL, `photo_album_id` int (11) KHÔNG PHẢI, `user_id` int (11) KHÔNG PHẢI, `title` varchar (255) mặc định 'Chưa có tiêu đề', `mô tả` văn bản, `credit` varchar (255) NULL mặc định, `photo_file_name` varchar (255) mặc định NULL, `photo_content_type` varchar (255) mặc định NULL, `photo_file_size` int (11) NULL mặc định, `photo_updated_at` NULL mặc định thời gian, `vị trí` int (11) mặc định '0', `lượt xem` int (11) mặc định '0', `thư mục` varchar (255) NULL mặc định, `đã xuất bản` tinyint (1) mặc định '0', `Publish_at` datetime mặc định NULL, `created_at` datetime mặc định NULL, `update_at` NULL mặc định thời gian, `album_published` tinyint (1) mặc định '0', `comment_count` int (11) mặc định '0', `audio_file_name` varchar (255) mặc định NULL, `audio_content_type` varchar (255) mặc định NULL, `audio_file_size` int (11) NULL mặc định, `audio_updated_at` NULL mặc định thời gian, `cover` tinyint (1) mặc định '0', `slug` varchar (255) NULL mặc định, `bình luận_count` int (11) mặc định '0', `xóa_from_s3` tinyint (1) mặc định '0', `batch` int (11) NULL mặc định, `audio` varchar (255) NULL mặc định, KHÓA CHÍNH (`id`), KEY `index_photos_on_album_published` (` album_published`), KEY `index_photos_on_batch` (` batch`), KEY `index_photos_on_comment_count` (` comment_count`), KEY `index_photos_on_created_at` (` created_at`), KEY `index_photos_on_delete_from_s3` (` xóa_from_s3`), KEY `index_photos_on_photo_album_id` (` photo_album_id`), KEY `index_photos_on_published` (` đã xuất bản`), KEY `index_photos_on_published_at` (` đã xuất bản_at`), KEY `index_photos_on_type` (` type`), KEY `index_photos_on_user_id` (` user_id`) ) ĐỘNG CƠ = InnoDB AUTO_INCREMENT = 42830 DEFAULT CHARSET = utf8
UPDATE table SET <field>=<field>+1 WHERE <pk_field>=1;
Bảng của tôi đơn giản hơn nhiều. Một cách ngẫu nhiên, điều này gây ra lỗi tương tự mà bạn nhận được. Phiên bản của tôi là: 5.1.39. Hôm nay tôi dành một chút thời gian để cố gắng tìm ra nó vì vậy tôi sẽ cập nhật nếu tôi tìm thấy bất cứ điều gì.