Cách cài đặt MySql trên Ubuntu

How Install Mysql Ubuntu



Tối ưu hóa các truy vấn của bạn cho bộ nhớ đệm truy vấn

Hầu hết các máy chủ MySQL được trao quyền cho bộ nhớ đệm truy vấn. Đây là một trong những chiến lược tốt nhất để nâng cao hiệu suất, được công cụ cơ sở dữ liệu quan tâm một cách kín đáo. Bất cứ khi nào cùng một truy vấn được chạy nhiều lần, kết quả đến từ bộ nhớ cache, do đó nhanh hơn nhiều.







GIẢI THÍCH Truy vấn CHỌN CỦA BẠN



Để có cái nhìn sâu sắc về những gì MySQL đang làm để chạy truy vấn của bạn, hãy sử dụng từ khóa EXPLAIN. Điều này giúp xác định tắc nghẽn và các vấn đề khác có thể gây khó khăn cho truy vấn của bạn hoặc các đối tượng cơ sở dữ liệu khác.



GIỚI HẠN 1 khi nhận được một hàng duy nhất





Khi truy vấn bảng của bạn chỉ một hàng hoặc sự tồn tại của các bản ghi khớp với mệnh đề WHERE đã cho, bạn nên thêm LIMIT 1 vào truy vấn SELECT để tăng hiệu suất. Điều này có nghĩa là công cụ cơ sở dữ liệu sẽ trả về kết quả sau khi nó chỉ tìm thấy một bản ghi thay vì quét toàn bộ đối tượng cơ sở dữ liệu nhất định.

Lập chỉ mục các trường tìm kiếm



Nếu có các cột trong bảng mà bạn sẽ sử dụng Tìm kiếm bởi các truy vấn, bạn nên luôn lập chỉ mục chúng.

Lập chỉ mục và sử dụng các tên cột giống nhau cho các phép nối

Cách tốt nhất là luôn lập chỉ mục các cột được sử dụng trong JOIN. Điều này cải thiện đáng kể cách MySQL tối ưu hóa hoạt động JOIN. Ngoài ra, hãy đảm bảo rằng các cột đang được nối có cùng kiểu dữ liệu. Nếu chúng thuộc các loại khác nhau, MySQL có thể không thể sử dụng một trong các chỉ mục.

Tránh chọn tất cả (CHỌN *)

Lượng dữ liệu bạn đọc từ các bảng ảnh hưởng đáng kể đến tốc độ của truy vấn. Nó ảnh hưởng đến thời gian hoạt động của đĩa. Nếu máy chủ cơ sở dữ liệu được truy cập qua mạng, nó sẽ ảnh hưởng đến thời gian cần thiết để truyền dữ liệu qua mạng. Đó là một trong những phương pháp hay nhất của MySQL luôn để chỉ định cột nào bạn cần khi thực hiện lệnh CHỌN của mình.

Chọn công cụ lưu trữ phù hợp

MySQL có hai công cụ lưu trữ chính; MyISAM và InnoDB. Mỗi cái này đều có những ưu điểm và nhược điểm của chúng.

MyISAM được khuyến nghị cho các ứng dụng đọc nhiều, mặc dù nó hoạt động kém trong trường hợp ghi nhiều. Các đối tượng cơ sở dữ liệu bị khóa khi một thao tác được thực hiện trên chúng bất kể chúng đơn giản như thế nào. MyISAM sẽ hữu ích khi thực hiện nhiều truy vấn SELECT COUNT (*).

InnoDB có xu hướng trở thành một công cụ lưu trữ phức tạp hơn. Tuy nhiên, nó có thể chậm hơn một chút so với MyISAM đối với nhiều ứng dụng nhỏ. Nhưng nó hỗ trợ khóa dựa trên hàng, quy mô tốt hơn. Nó cũng có thể xử lý một số tính năng nâng cao hơn như giao dịch.

Nguồn

https://www.fullstackpython.com/blog/install-mysql-ubuntu-1604.html
https://code.tutsplus.com/tutorials/top-20-mysql-best-practices–net-7855