September 5, 2015

Công cụ, thủ thuật và kinh nghiệm tối ưu hóa MySQL trên VPS Linux

Nếu bạn sử dụng 1 VPS Linux mới cài nguyên bản LAMP lên, hẳn bạn sẽ gặp trường hợp VPS của bạn bị treo vì MySQL hoặc Apache gây quá tải RAM. Lỗi này thường được biết đến khi mà bạn chẳng tối ưu hóa các thông số kĩ thuật cho VPS. Từ quan điểm của 1 tay mơ, để VPS chạy tốt, bạn cần biết đến từng thành phần tối ưu hóa, ở đây trong bài viết này là MySQL.

CÔNG CỤ TỐI ƯU HÓA MYSQL

Ở đây chúng ta có 2 lựa chọn, chọn cái nào cũng được.

Lựa chọn 1: MySQL Performance Tuning Primer Script

Cài đặt bằng các dòng lệnh sau:
Lựa chọn 2 (phổ biến): MySQLTuner

Cài đặt bằng các dòng lệnh sau:
Dòng lệnh cuối cùng sau khi bạn chạy sẽ check thông tin MySQL của bạn và cho ra 1 số khuyến nghị (khuyến khích làm nhưng không phải là làm theo tuốt đâu nhé!). Chẳng hạn như:
TỐI ƯU HÓA THÔNG SỐ MYSQL

Sau khi bạn có 1 số thông tin cấu hình ở trên, bạn cần thực hiện các điều chỉnh. Thông thường các điều chỉnh này cần bạn sửa 1 file cấu hình của MySQL (thường nằm ở /etc/my.cnf) như sau:

Lưu ý: Bạn cần biết sử dụng editor (công cụ sửa file trên SSH). Ở đây mình thấy vi editor khá dễ sử dụng.
Cơ bản và nhanh để biết nhé:
+ Sửa file nào đó thì gõ lệnh vi <đường dẫn tới file>
+ Sửa nội dung file (sau khi vào trong file) thì ấn phím "Insert" trên bàn phím.
+ Lưu lại: ấn nút "Esc" trên bàn phím rồi gõ :wq! (gõ liền 1 cái rồi nhấn Enter thì sẽ lưu và quay trở lại command).

Bây giờ, quay trở lại, ta đang cần tối ưu hóa MySQL đúng không nào. Hãy bắt đầu bằng dòng lệnh sau:

Nội dung file sẽ hiện ra, chẳng hạn như với 1 VPS 500MB RAM thì đây là khuyến nghị của mình:
Còn với 1 VPS chỉ vẻn vẹn 200MB RAM, mình thấy cần cấu hình như sau:
Sau khi bạn thử thực hiện điều chỉnh thông số cho phù hợp, bạn lưu lại và thực hiện restart MySQL bằng các dòng lệnh sau:

Cuối cùng, bạn thử dòng lệnhtop -c để kiểm tra xem mức độ ổn định của VPS đã hơn chưa nhé.

LƯU Ý:
1, Hãy thực hiện công việc này lúc VPS ít khách nhất để tránh downtime vì MySQL có thể lỗi.
2, Nếu bạn restart MySQL mà không lên thì remove file my.cnf đi và thực hiện tunning lại, TỪNG DÒNG CẤU HÌNH MỘT.
Để xóa file my.cnf:
Để đổi tên file my.cnf:

Related Posts:

  • Cấu hình remote database trên vps/máy chủ riêngBước 1: Ssh vào server. Bươc 2: Chỉnh sửa file my.cnf. Đối với Centos khách hàng chỉnh sửa file my.cnf tại /etc/my.cnf . Tại [mysqld] thêm vào dòng bind-address=YOUR-SERVER-IP sau đó save file và dùng lệnh /etc/init.d/mysql … Read More
  • Tổng hợp các lệnh thường dùng để quản trị MySQL1. Vị trí các tập tin CSDL:/var/lib/mysql2. Quản lý các tài khoản user và database admin:Lưu ý: Trước khi thực hiện các câu lệnh bên dưới bạn cần phải đăng nhập vào MySQL bằng tài khoản quản trị (root).Hiển thị tất cả tài kho… Read More
  • Các phương thức import cơ sở dữ liệu MySQL1. Giới thiệu:Trong trường hợp bạn muốn sử dụng cơ sở dữ liệu mới, bạn cần sử dụng chức năng "Tạo cơ sở dữ liệu mới" trong cPanel. Bài viết này hướng dẫn các bạn cách Import cơ sở dữ liệu MySQL. 2. Cách thực hiện Import:… Read More
  • PHP/Mysql compatibility - PDO::__construct(): authentication method unknownIf you are getting this error during DAP livelinks activation:Warning: PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password] inThis indicates a php version incompatibility w… Read More
  • Hướng dẫn reset password root MySQL 1. Giới thiệu:Bài viết này sẽ hướng dẫn cách thực hiện reset password root MySQL theo từng bước cụ thể.2. Các bước thực hiện: Bước 1: Stop dịch vụ MySQL #/etc/init.d/mysqld stop Bước 2: Start dịch vụ MySQL # mysqld_saf… Read More

0 comments:

Post a Comment