Tin tức, hướng dẫn và chia sẻ về công nghệ

[MariaDB] Các thao tác cơ bản với MySQL WorkBench

MySQL Workbench là một công cụ giúp ta thao tác dễ dàng, trực quan hơn với database. Thay vì phải làm việc với database qua giao diện dòng lệnh nhàm chán như trước, giờ đây bạn có thể nhìn database một cách trực quan hơn qua giao diện khá bắt mắt của MySQL Workbench.

Mục lục


1. Mô hình

2. Kết nối vào database trên MySQL Workbench

3. Quản lý cơ sở dữ liệu

4. Quản lý table trong database

5.  Truy vấn dữ liệu và Views

6. Sao lưu dữ liệu ( Export )

7.  Phục hồi dữ liệu ( Import )

8.  Tạo tài khoản ( user )

9.  Phân quyền cho user

10. Xóa database

1. Mô hình

Sử dụng 1 server cho mô hình và 1 máy đã cài đặt phần mềm MySQL Workbench(download tại đây):
– MariaDB Server sử dụng CentOS 7 OS
– Có kết nối Internet
– User database SSH vào MariaDB Server(bài viết này mình sử dụng user thường được cấp quyền)

2. Tạo connection

  • SSH vào MariaDB Server, tạo 1 user và cấp quyền cho user đó
create user 'demo'@'%' identified by 'secret'; --> tạo user demo
grant all on *.* to 'demo'@'%'; --> cấp quyền cho user demo trên tất cả database
  • Chỉnh sửa bind-address trong file /etc/my.cnf.d/server.cnf cho phép người dùng trên MySQL Workbench kết nối vào Database trên tất cả các cổng
[mariadb] 
bind-address=0.0.0.0
  • Dùng MySQL Workbench kết nối vào Database

Click vào biểu tượng dấu + như hình

Nhập vào các thông số của bạn

Kiểm tra kết nối và hoàn thành kết nối

Kết nối thành công, 1 kết nối nhanh được tạo trên giao diện home của MySQL Workbench

Đây là giao diện sau khi bạn click vào kết nối ở home và cũng là nơi chúng ta trực tiếp sử dụng để quản trị database

3. Quản lý cơ sở dữ liệu

  • Tạo Database(New Schema)

Database mới tạo xuất hiện ở tab bên trái màn hình. Mặc định trong mỗi database sẽ có 4 objects: Tables(Bảng), Views, Stored Procedures(Thủ tục)Functions(Hàm) . Click trực tiếp vào từng object để sử dụng.

 4. Quản lý table trong database

  • Tạo Table

Chuột phải vào Tables –> Create table

Kết quả màn hình sẽ xuất hiện như hình dưới. Điền thông tin về table:

Name – tên database
Default Collation – kiểu chữ hiển thị (nên đặt là utf8 – utf8_general_ci hoặc utf8 – utf8_unicode_ci để có thể hiển thị được Tiếng Việt)

Ấn vào 2 dấu mũi tên lên trên bên phải để tạo các cột và tùy chọn các Constraints(ràng buộc), sau đó apply để hoàn tất tạo bảng

Các Constraints trên MySQL Workbench

PK: Primarey Key – khóa chính xác định duy nhất mỗi hàng/bản ghi trong bảng cơ sở dữ liệu
NN: Not Null – Đảm bảo rằng một cột không thể có giá trị NULL
UQ: Unique – Đảm bảo tất cả các giá trị trong một cột là khác nhau
BIN: Binary
UN: Unsigned
ZF: Zero-Filled
AI: Auto Increment – tăng tự động, chỉ thiết lập được cho kiểu INT

Qúa trình thực thi thành công, chúng ta đã có 1 table mới trong mục Tables:

  • Để chỉnh sửa lại thông tin hay thêm biến … chúng ta chuột phải vào table cần chỉnh sửa chọn ” Alter Table ” thì toàn bộ thông tin của table sẽ hiển thị ra giống như lúc khởi tạo 1 table mới.

5. Truy vấn dữ liệu và Views

  • Truy vấn dữ liệu

Để tạo ra câu truy vấn mới chúng ta click vào icon như trong ảnh dưới đây:

Sau khi file SQL xuất hiện bắt đầu viết các câu SQL vào đây và execute lệnh bằng 1 trong 2 biểu tượng tia sét:
– Biểu tượng tia sét 1 ( Excute the selected portion of the script or everything, if there is no selection ) : biểu tượng này sẽ thực thi các câu lệnh nếu chúng ta bôi đen nó hoặc nó nếu có 1 câu trong file thì không cần bôi đen giống với ví dụ ở trên mình làm
– Biểu tượng tia sét 2 ( Excute the statement under the keyboard cursor ) : sẽ thực thi tất cả các câu lệnh nằm sau dấu keyboard cusor

  • Views

View là gì?

View là các truy vấn SELECT được lưu lại như là một table và sau đó ta có thể truy vấn dữ liệu từ view như thực hiện với table.

Ưu nhược điểm

  • Ưu điểm
    • Bảo mật – Cho phép người quản trị CSDL (DBA) cung cấp cho người sử dụng chỉ những dữ liệu cần thiết
    • Đơn giản hóa – Các view cũng có thể sử dụng để ẩn và sử dụng lại các truy vấn phức tạp => rất tiện với những câu truy vấn còng kềnh dài hàng trang A4
  • Nhược điểm:
    • Tốn thêm tài nguyên trên Server (memory, process)

Tạo views

Giả sử ta có 2 bảng:

Tạo view cho câu SQL: kết hợp 2 bảng SVTT và Mentor dùng INNER JOIN để lấy thông tin về: họ tên mentor, MSSV SVTT, Giới tính SVTT

CREATE VIEW demodb.testview
AS 
select Mentor.Hoten, SVTT.MSSV, SVTT.Gioitinh
from Mentor
inner join SVTT
on Mentor.MentorID = SVTT.MentorID; 

Trong đó
testview là tên của view  
demodb là tên của database(schema)

Truy vấn dữ liệu từ view

Câu lệnh:

select * from view_name;

Ví dụ: Truy vấn thông tin về họ tên mentor, MSSV SVTT, Giới tính SVTT trong view demodb.testview

select * from demodb.testview;

Kết quả:

6. Sao lưu dữ liệu ( Export )

Để có thể sao lưu dữ liệu ( export) chúng ta click vào Data Export ở Management:

Lựa chọn data mà bạn muốn exporrt

Export to Dump Project Folder: kiểu này sẽ export từng table thành từng file khác nhau trong 1 folder.
Export to Self-Contained File: kiểu này sẽ export tất cả thành 1 file SQL.

Tùy chọn nâng cao

Nhấn Start Export để bắt đầu quá trình export

Sau khi quá trình export hoàn tất

7. Phục hồi dữ liệu ( Import )

Click vào Data Import/Restore:

Chọn file dữ liệu bạn muốn import sau đó chọn Start Import để tiến hành import dữ liệu

Import from Dump Project Folder: đây là kiểu import từ 1 folder giống như option export.
Import from Self-Contained File: kiểu import từ 1 file.

9. Tạo tài khoản ( user )

Thực hiện lần lượt theo các bước phía dưới

Trong đó:
Login Name: tên user
Authentication Type: kiểu xác thực ( Standard hoặc Standard Old )
Limit Connectivity to Hosts Matching: điền vào localhost ( 127.0.0.1 ) hoặc ip của host hoặc % ( tất cả các host )
Password: mật khẩu cho user
Confirm Password: nhập lại mật khẩu của user

Các tab còn lại:
Account Limits: tab này sẽ giới hạn số lượng queries hay connection … của user
Administrative Roles: set các roles cho user trong hệ thống
Schema Privileges: Phân quyền cho User

8. Phân quyền cho user

Any Schema ( % ) : User sẽ có quyền với tất cả các database
Schemas matching pattern or name: match với các tên của database khi tạo. Ví dụ db1_bill, db1_user
Selected schema: cho chọn database có trong hệ thống để cấp quyền

Sau khi ấn OK, bảng phân quyền cho user với database sẽ hiện ra. Bạn tùy chọn các quyền rồi nhấn Apply

10.  Xóa database

Chọn database cần xóa trong phần Schemas –> chuột phải chọn Drop Database. Hệ thống sẽ cho chúng ta lựa chọn review SQL hoặc click vào Drop Now để xóa luôn:

Tham khảo các bài viết khác

3 Comments

  1. Trần Trọng Huấn

    Bài viết rất hay. Cảm ơn tác giả!!!

  2. Trần Quang Hà

    Nên có thêm video quay lại quá trình, vậy sẽ dễ hiểu hơn ạ

    • Nguyễn Thúy Hiền

      Cảm ơn bạn góp ý nhé. Trong những bài viết sau mình sẽ cố gắng bổ sung nha! <3

Leave a Reply

Your email address will not be published. Required fields are marked *