Sử dụng mysql trên ubuntu

Sử dụng mysql trên ubuntu

Đã đăng vào thg 3 14, 2017 3:05 CH 1 phút đọc

Bắt đầu với những thao tác cơ bản nhất với Mysql

Mở terminal và bắt đầu thao tác Khởi động mysql sau khi cài đặt:

mysql -u root -p

Câu lệnh trên bạn yêu cầu truy cập user root. Sau khi nhập mật khẩu bạn có thể truy cập sử dụng mysql với quyền của user root. Để xem danh sách các database bạn dùng câu lệnh.

show databases;

Mysql sẽ hiện ra bảng danh sách các databases. Ở bảng này bạn có thể thấy database mysql, đây là database rất quan trọng chứa các thông tin của mysql như user, password,... Chúng ta có thể tạo một database mới như sau:

CREATE DATABASE IF NOT EXISTS database_name;

Câu lệnh trên sẽ tạo ra database với tên là 'database_name' nếu chưa có database nào có tên như vậy. Muốn xóa database ta có thể dùng câu lệnh:

DROP DATABASE IF EXISTS database_name;

Câu lệnh trên sẽ xóa database có tên là 'database_name' nếu có database tên như vậy Muốn thao tác với một database, ta dùng lệnh:

use database_name;

Xem các bảng có trong database:

show tables;

Xem toàn bộ dữ liệu của 1 bảng:

SELECT * FROM database_name;

hoặc

SELECT * FROM database_name \G

2 câu lệnh trên sẽ hiển thị dữ liệu theo 2 kiểu khác nhau.

Ở trên là một vài thao tác cơ bản với mysql trên Ubuntu. Cảm ơn các bạn đã đọc và rất mong nhận được sự góp ý của mọi người.

Xem phần II: tại đây

All rights reserved

Sử dụng mysql trên ubuntu

Bài viết này sẽ hướng dẫn bạn cách cài đặt và tối ưu MySQL trên Ubuntu 20.04. Nếu bạn cần hỗ trợ, xin vui lòng liên hệ VinaHost qua Hotline 1900 6046 ext.3, email về hoặc chat với VinaHost qua livechat https://livechat.vinahost.vn/chat.php.

Giới thiệu

MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (gọi tắt là RDBMS) hoạt động theo mô hình client-server. Với RDBMS là viết tắt của Relational Database Management System. MySQL thường được tích hợp với Apache, PHP. MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu. Mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL cũng có cùng một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL.

Bước 1: Cài đặt MySQL

Theo mặc định, kho ứng dụng của Ubuntu 20.04 sẽ có sẵn MySQL Server 8. Sau khi đăng nhập vào máy chủ của bạn, hãy cập nhật bộ đệm apt và chạy lệnh cài đặt MySQL:

root@vina:~# sudo apt update
root@vina:~# sudo apt install mysql-server

Sau khi cài đặt, dịch vụ MySQL sẽ tự động khởi động. Để kiểm tra trạng thái dịch vụ hãy sử dụng lệnh sau:

root@vina:~# sudo systemctl status mysql

Sử dụng mysql trên ubuntu
cài đặt MySQL và tối ưu MySQL trên Ubuntu 20.04

Bước 2: Bảo mật MySQL

Đối với một số bản cài đặt mới của MySQL, các bạn sẽ chạy tập lệnh bảo mật đi kèm mysql_secure_installation.Tập lệnh này thay đổi một số tùy chọn mặc định kém an toàn.

root@vina:~# sudo mysql_secure_installation

Tuỳ chọn đầu tiên, bạn sẽ được yêu cầu thiết lập cấu hình VALIDATE PASSWORD COMPONENT, được sử dụng để kiểm tra độ mạnh của mật khẩu người dùng MySQL. Nhấn ENTER nếu bạn không muốn thiết lập VALIDATE PASSWORD COMPONENT.

Sử dụng mysql trên ubuntu
cài đặt MySQL và tối ưu MySQL trên Ubuntu 20.04

Ở tuỳ chọn tiếp theo, bạn sẽ được yêu cầu đặt mật khẩu cho người dùng root MySQL. Sau đó, tập lệnh cũng sẽ yêu cầu bạn xóa người dùng ẩn danh, hạn chế quyền truy cập của người dùng root vào máy cục bộ localhost và xóa cơ sở dữ liệu test. Bạn nên trả lời câu Y cho tất cả các câu hỏi.

Please set the password for root here.

New password: Mật khẩu root MySQL

Re-enter new password: Nhập lại mật khẩu root MySQL

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

Hướng dẫn tối ưu MySQL trên Ubuntu 20.04

Các thông số có thể tăng hiệu suất hoạt động của MySQL:

Biến Ý nghĩa
innodb_buffer_pool_size Đây là tham số quan trọng khi sử dụng InnoDB. InnoDB luôn duy trì một vùng lưu trữ được gọi là buffer pool để cache lại dữ liệu và chỉ mục bên trong memory. Kích thước của buffer pool được tính bằng byte. Giá trị này càng cao thì khả năng chứa bộ nhớ đệm cho dữ liệu trong quá trình truy xuất dữ liệu database càng nhiều (truy xuất trên RAM thay vì trên ổ cứng với những giá trị được truy cập thường xuyên) Khi thiết lập thông số này, các bạn nên đặt giá trị từ khoảng 50%-70% lượng ram của server vật lý và không cần phải đặt lớn hơn tổng kích thước cơ sở dữ liệu.
innodb_log_file_size Kích thước của file log được tính bằng byte. Việc tùy chỉnh kích thước lớn phù hợp sẽ tăng hiệu suất xử lý. Nó còn phụ thuộc vào số lượng công việc hoạt động và phiên bản của máy chủ.
innodb_flush_log_at_trx_commit Cho biết điều gì xảy ra với log file. Với giá trị là 1 chúng ta có thiết lập an toàn nhất, bởi vì log được chuyển sang đĩa sau mỗi lần giao dịch. Với giá trị 0 hoặc 2 nó ít an toàn hơn, nhưng hiệu suất cao hơn.
innodb_flush_method Định nghĩa phương thức để làm sạch dữ liệu cho các file dữ liệu và log của InnoDB. Có nhiều phương thức nhưng người ta thường dùng O_DIRECT cho GNU/Linux versions, FreeBSD, Solaris.
innodb_file_per_table Mặc định giá trị này đã tắt. Nếu tắt thì InnoDB sẽ tạo bảng trong khoảng không gian chia sẽ dùng chung của các bảng. Nếu bật cờ này (=ON) thì khi tạo mỗi bảng sẽ sở hữu một file có đuôi là .idb để lưu trữ dữ liệu và chỉ mục
innodb_stats_on_metadata Đặt chế độ này thành “OFF” sẽ tránh được việc cập nhật số liệu thống kê InnoDB không cần thiết và có thể cải thiện đáng kể tốc độ đọc.
innodb_buffer_pool_instances Là số vùng mà innodb_buffer_pool_size được chia thành. Đối với các hệ thống có buffer pool trong phạm vi nhiều gigabyte, việc chia buffer pool thành các trường hợp riêng biệt có thể cải thiện tính đồng thời, bằng cách giảm sự tranh chấp khi các luồng khác nhau đọc và ghi vào các trang được lưu trong bộ nhớ đệm. Mỗi trang lưu trữ bên trong hoặc đọc từ buffer pool sẽ được gán ngẫu nhiên cho một trong các trường hợp buffer pool, sử dụng hàm băm. Cách tốt nhất là đặt giá trị này thành “8” trừ khi kích thước buffer pool <1G, trong trường hợp đó được đặt thành “1”.
query_cache_type & quẻy_cache_size Đặt cả hai thông số này là “0” sẽ vô hiệu hoá hoàn toàn bộ nhớ đệm truy vấn

Để điều chỉnh các thông số trên, các bạn sử dụng lệnh sau:

root@vina:~# sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
[mysql]
innodb_buffer_pool_size = 2G
innodb_log_file_size = 128M
innodb_flush_log_at_trx_commit = 1
nnodb_flush_method = O_DIRECT
innodb_file_per_table = ON
innodb_stats_on_metadata = OFF
innodb_buffer_pool_instances = 8
query_cache_type = 0

query_cache_size = 0 Vậy là chúng tôi đã hướng dẫn xong cách cài đặt và tối ưu MySQL trên Ubuntu 20.04. Chúc bạn thành công!

Was this article helpful?