Một lưu ý bổ sung cho những ai không làm theo các liên kết được cung cấp bởi @ Jonathan Fingland:
8.7.4. External Locking
Tùy chọn này chỉ áp dụng cho các bảng MyISAM.
Như Richard đã chỉ ra, khóa ngoài bị tắt theo mặc định. Bạn cần bật khóa bên ngoài nếu bạn sử dụng myisamchk
để ghi các thao tác hoặc nếu bạn sử dụng myisampack
để đóng gói các bảng.
Từ các tài liệu:
Nếu bạn sử dụng myisamchk để thực hiện các hoạt động bảo trì bảng trên MyISAM bảng, bạn phải đảm bảo rằng các máy chủ không hoạt động, hoặc là máy chủ đã khóa bên ngoài được kích hoạt để nó khóa các tệp bảng khi cần thiết để phối hợp với myisamchk để truy cập vào các bảng. Điều tương tự cũng đúng đối với việc sử dụng myisampack để đóng gói các bảng MyISAM.
Nếu bạn sử dụng myisamchk để ghi các hoạt động như sửa chữa hoặc tối ưu hóa bảng, hoặc nếu bạn sử dụng myisampack để đóng gói bảng, bạn phải luôn đảm bảo rằng máy chủ mysqld không sử dụng bảng. Nếu bạn không dừng mysqld, bạn nên ít nhất làm một bảng mysqladmin tuôn ra trước khi bạn chạy myisamchk. Bảng của bạn có thể bị hỏng nếu máy chủ và myisamchk truy cập các bảng cùng một lúc.
Cảm ơn - nhưng đó là skip_external_locking - Tôi muốn biết liệu 'bỏ qua khóa' có giống nhau không và nếu cần thiết trong tệp cấu hình vì nó đã là mặc định? – Richard
đã chỉnh sửa. nó chỉ là một đổi tên –
Cảm ơn một lần nữa, vì vậy để tóm tắt - hàng 'bỏ khóa' của tập tin cấu hình có thể được gỡ bỏ bởi vì a) nó đã lỗi thời, biến đã được đổi tên. b) hành vi đó là mặc định – Richard