Sửa lỗi "can't create/write to file" trên MySQL
"can't create/write to file" là một lỗi vô cùng phổ biến khi bạn xử lý hệ thống với công việc export database của server. Đây là một vấn đề khá nhỏ và Bizfly Cloud sẽ hướng dẫn các bạn cách khắc phục trong bài viết sau đây!
Hai thông báo lỗi MySQL
Thông báo lỗi MySQL giống như sau:
can't create/write to file /var/lib/mysql/foo.bar.baz
Errcode: 23
Tệp thực sự được tham chiếu trong thông báo lỗi đó không quan trọng, vì nó sẽ khác nhau trên hầu hết các hệ thống, thông báo lỗi "can't create/write to file" mới là điều quan trọng.
Sau khi tìm hiểu thông qua log files, bạn cũng có thể tìm thấy thông báo lỗi này liên quan đến MySQL:
Got error 12 from select
Error in accept: Too many open files in system
Cả hai thông báo lỗi ("can't create/write to file", "too many open files in system") đều liên quan đến cùng một vấn đề: MySQL đang cố mở nhiều tệp trên hệ thống Linux, vượt quá số lượng cho phép khi cấu hình.
Những lỗi khác có liên quan
Trước khi tiến tới phần giải pháp cho các lỗi trên, hãy cùng điểm qua một vài lỗi hiển thị cũng cùng có một nguyên nhân như thế.
Dưới đây là một số thông báo lỗi hiển thị với tiện ích perror:
shell> perror 23
OS error code 23: File table overflow
shell> perror 24
OS error code 24: Too many open files
shell> perror 11
OS error code 11: Resource temporarily unavailable
2. Giải quyết nguyên nhân gốc rễ của vấn đề
Có một số cách để giải quyết vấn đề này, nhưng tất cả chúng đều liên quan đến giới hạn số lượng tệp mà người dùng có thể mở cùng một lúc.
Trong trường hợp của bài viết, chúng ta giải quyết vấn đề này bằng cách thay đổi biến open-files-limit thành một giá trị cao hơn nhiều so với giá trị mặc định. Bạn hãy chỉnh sửa tập tin cấu hình MySQL /etc/my.cnf trên hệ thống CentOS Linux, và thiết lập giá trị như thế này:
[mysqld]
open-files-limit=2048
Chúc các bạn thành công!
Dịch từ: alvinalexander.com/mysql/mysql-cant-create-write-file-error-message
Theo Bizfly Cloud chia sẻ
>> Có thể bạn quan tâm: SQL là gì? Những thông tin về ngôn ngữ SQL bạn nên biết