Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL Workbench Alternatives - ClusterControl Database User Management

Quản lý đặc quyền và người dùng MySQL là rất quan trọng cho các mục đích xác thực, ủy quyền và kế toán. Kể từ MySQL 8.0, hiện có hai loại đặc quyền của người dùng cơ sở dữ liệu:

  1. Đặc quyền tĩnh - Các đặc quyền quản trị, giản đồ và toàn cầu phổ biến như SELECT, ALTER, SUPER và USAGE, được tích hợp vào máy chủ.
  2. Đặc quyền động - Tính năng mới trong MySQL 8.0. Một thành phần có thể được đăng ký và chưa đăng ký trong thời gian chạy, cung cấp khả năng kiểm soát tốt hơn đối với các đặc quyền toàn cầu. Ví dụ:thay vì gán đặc quyền SUPER chỉ cho mục đích quản lý cấu hình, người dùng cụ thể đó tốt hơn nên chỉ được cấp đặc quyền SYSTEM_VARIABLES_ADMIN.

Tạo một lược đồ cơ sở dữ liệu với người dùng tương ứng của nó là bước ban đầu để bắt đầu sử dụng MySQL làm máy chủ cơ sở dữ liệu của bạn. Hầu hết các ứng dụng sử dụng MySQL làm kho dữ liệu yêu cầu tác vụ này phải được thực hiện trước khi ứng dụng có thể hoạt động như dự định. Để sử dụng với một ứng dụng, thông thường người dùng MySQL được định cấu hình để có đầy đủ các đặc quyền (TẤT CẢ CÁC QUYỀN RIÊNG TƯ) trên cấp lược đồ, có nghĩa là người dùng cơ sở dữ liệu được ứng dụng sử dụng có quyền tự do thực hiện bất kỳ hành động nào trên cơ sở dữ liệu được chỉ định.

Trong bài đăng trên blog này, chúng tôi sẽ so sánh và đối chiếu các tính năng quản lý người dùng cơ sở dữ liệu MySQL giữa MySQL Workbench và ClusterControl.

MySQL Workbench - Quản lý người dùng cơ sở dữ liệu

Đối với MySQL Workbench, bạn có thể tìm thấy tất cả nội dung quản lý người dùng trong Quản trị -> Quản lý -> Người dùng và Đặc quyền. Bạn sẽ thấy danh sách những người dùng hiện có ở phía bên trái trong khi ở phía bên phải là phần cấu hình xác thực và ủy quyền cho người dùng đã chọn:

MySQL hỗ trợ hơn 30 đặc quyền tĩnh và không dễ hiểu và dễ nhớ khu mua sắm. MySQL Workbench có một số vai trò quản trị đặt trước, rất hữu ích khi gán đủ đặc quyền cho người dùng cơ sở dữ liệu. Ví dụ:nếu bạn muốn tạo một người dùng MySQL đặc biệt để thực hiện các hoạt động sao lưu bằng mysqldump, bạn có thể chọn vai trò BackupAdmin và các đặc quyền toàn cầu liên quan sẽ được chỉ định cho người dùng tương ứng:

Để tạo người dùng cơ sở dữ liệu mới, hãy nhấp vào nút "Thêm tài khoản" và cung cấp thông tin cần thiết trong tab "Đăng nhập". Bạn có thể thêm một số hạn chế tài nguyên khác trong tab "Giới hạn tài khoản". Nếu người dùng chỉ dành cho một lược đồ cơ sở dữ liệu và không dành cho bất kỳ vai trò quản trị nào (hoàn toàn cho việc sử dụng ứng dụng), bạn có thể bỏ qua tab "Vai trò quản trị" và chỉ cần định cấu hình "Đặc quyền của lược đồ".

Trong phần "Đặc quyền của lược đồ", người ta có thể chọn một lược đồ cơ sở dữ liệu (hoặc xác định mẫu phù hợp) bằng cách nhấp vào "Thêm mục nhập". Sau đó, nhấn nút "Chọn TẤT CẢ" để cho phép tất cả các quyền (ngoại trừ TÙY CHỌN CẤP), tương tự như câu lệnh tùy chọn "TẤT CẢ CÁC QUYỀN RIÊNG TƯ":

Người dùng cơ sở dữ liệu sẽ không được tạo trong máy chủ MySQL cho đến khi bạn đăng ký các thay đổi, bằng cách nhấp vào nút "Áp dụng".

ClusterControl - Quản lý cơ sở dữ liệu và proxy người dùng

Cơ sở dữ liệu ClusterControl và quản lý người dùng đơn giản hơn một chút so với những gì MySQL Workbench cung cấp. Trong khi MySQL Workbench thân thiện hơn với nhà phát triển, ClusterControl tập trung nhiều hơn vào những gì SysAdmins và DBAs quan tâm, giống như công cụ quản trị phổ biến hơn cho những người đã quen thuộc với các vai trò và đặc quyền của MySQL.

Để tạo người dùng cơ sở dữ liệu, hãy đi tới Quản lý -> Lược đồ và Người dùng -> Người dùng -> Tạo Người dùng Mới. Bạn sẽ thấy trình hướng dẫn tạo người dùng sau:

Tạo người dùng trong ClusterControl yêu cầu bạn điền vào tất cả các trường cần thiết trong một , không giống như MySQL Workbench liên quan đến một số lần nhấp chuột để đạt được kết quả tương tự. ClusterControl cũng hỗ trợ tạo người dùng với cú pháp "YÊU CẦU SSL", để buộc người dùng cụ thể chỉ được truy cập qua kênh mã hóa SSL.

ClusterControl cung cấp chế độ xem tổng hợp về tất cả người dùng cơ sở dữ liệu trong một cụm, giúp bạn không phải đăng nhập vào từng máy chủ riêng lẻ để tìm kiếm một người dùng cụ thể:

Thao tác di chuyển đơn giản trên hộp đặc quyền sẽ hiển thị tất cả các đặc quyền đã được gán cho người dùng này. ClusterControl cũng cung cấp danh sách người dùng không hoạt động, tài khoản người dùng chưa được sử dụng kể từ lần khởi động lại máy chủ cuối cùng:

Danh sách trên cung cấp cho chúng ta một bản tóm tắt rõ ràng về những người dùng đáng tồn tại , cho phép chúng tôi quản lý người dùng hiệu quả hơn. Sau đó, DBA có thể hỏi nhà phát triển xem liệu người dùng cơ sở dữ liệu không hoạt động có còn cần thiết để hoạt động hay không, nếu không, tài khoản người dùng có thể bị khóa hoặc bị loại bỏ.

Nếu bạn đang có một bộ cân bằng tải ProxySQL ở giữa, bạn có thể biết rằng ProxySQL có quản lý người dùng MySQL của riêng nó để cho phép nó được chuyển qua nó. Có một số cài đặt và biến khác nhau nếu được so sánh với cấu hình người dùng MySQL phổ biến, ví dụ:nhóm máy chủ mặc định, lược đồ mặc định, tính duy trì của giao dịch, tua đi nhanh và nhiều hơn nữa. ClusterControl cung cấp giao diện người dùng đồ họa trong việc quản lý người dùng cơ sở dữ liệu ProxySQL, cải thiện trải nghiệm và hiệu quả quản lý người dùng proxy và cơ sở dữ liệu của bạn cùng một lúc:

Khi tạo người dùng cơ sở dữ liệu mới qua trang quản lý ProxySQL, ClusterControl sẽ tự động tạo người dùng tương ứng trên cả ProxySQL và MySQL. Tuy nhiên, khi loại bỏ người dùng MySQL khỏi ProxySQL, người dùng cơ sở dữ liệu tương ứng sẽ vẫn ở trên máy chủ MySQL.

Ưu điểm &Nhược điểm

ClusterControl hỗ trợ nhiều nhà cung cấp cơ sở dữ liệu, do đó bạn sẽ có được trải nghiệm người dùng tương tự khi giao dịch với các máy chủ cơ sở dữ liệu khác. ClusterControl cũng hỗ trợ tạo một người dùng cơ sở dữ liệu trên nhiều máy chủ cùng một lúc, nơi nó sẽ đảm bảo người dùng được tạo tồn tại trên tất cả các máy chủ cơ sở dữ liệu trong cụm. ClusterControl có một cách rõ ràng hơn khi liệt kê các tài khoản người dùng, nơi bạn có thể xem tất cả thông tin cần thiết ngay trong trang danh sách. Tuy nhiên, quản lý người dùng yêu cầu đăng ký hoạt động và không có sẵn trong phiên bản cộng đồng. Nó không hỗ trợ tất cả các nền tảng mà MySQL có thể chạy, đặc biệt là chỉ một số bản phân phối Linux nhất định như CentOS, RHEL, Debian và Ubuntu.

Ưu điểm mạnh nhất của MySQL Workbench là nó miễn phí và có thể được sử dụng cùng với quản lý và quản trị lược đồ. Nó được xây dựng để thân thiện hơn với các nhà phát triển và DBA, đồng thời có lợi thế là được xây dựng và hỗ trợ bởi nhóm Oracle, những người sở hữu và duy trì máy chủ MySQL. Nó cũng cung cấp hướng dẫn rõ ràng hơn với mô tả về hầu hết các trường đầu vào, đặc biệt là trong các phần quan trọng như xác thực và quản lý đặc quyền. Vai trò quản trị đặt trước là một cách gọn gàng để cấp một tập hợp các đặc quyền cho người dùng, dựa trên công việc mà người dùng phải thực hiện trên máy chủ. Mặt khác, MySQL Workbench không phải là một công cụ thân thiện với cụm vì mọi kết nối quản lý đều được điều chỉnh cho phù hợp với một máy chủ MySQL điểm cuối. Do đó, nó không cung cấp chế độ xem tập trung cho tất cả người dùng trong cụm. Nó cũng không hỗ trợ tạo người dùng bằng việc thực thi SSL.

Cả hai công cụ này đều không hỗ trợ cú pháp đặc quyền động MySQL 8.0 mới, ví dụ:BACKUP_ADMIN, BINLOG_ADMIN, SYSTEM_VARIABLES_ADMIN, v.v.

Bảng sau đây nêu bật các tính năng đáng chú ý của cả hai công cụ để dễ dàng so sánh:

Khía cạnh Quản lý Người dùng

MySQL Workbench

ClusterControl

Hệ điều hành được hỗ trợ cho máy chủ MySQL

  • Linux

  • Windows

  • FreeBSD

  • Mở Solaris

  • Mac OS

  • Linux (Debian, Ubuntu, RHEL, CentOS)

Nhà cung cấp MySQL

  • Oracle

  • Percona

  • Oracle

  • Percona

  • MariaDB

  • Mã hóa

Hỗ trợ quản lý người dùng cho các phần mềm khác

  • ProxySQL

Quản lý người dùng trên nhiều máy chủ

Không

Chế độ xem tổng hợp về người dùng trong một cụm cơ sở dữ liệu

Không

Hiển thị người dùng không hoạt động

Không

Tạo người dùng với SSL

Không

Mô tả đặc quyền và vai trò

Không

Đặt trước vai trò quản trị

Không

Đặc quyền động MySQL 8.0

Không

Không

Chi phí

Miễn phí

Cần đăng ký cho các tính năng quản lý


Chúng tôi hy vọng rằng những bài đăng trên blog này sẽ giúp bạn xác định công cụ nào phù hợp nhất để quản lý cơ sở dữ liệu MySQL và người dùng của bạn.
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chạy MySQLDump mà không cần khóa bảng

  2. PHP CRUD Tạo, chỉnh sửa, cập nhật và xóa bài đăng với cơ sở dữ liệu MySQL

  3. Sử dụng NẾU TỒN TẠI của MySQL

  4. LỖI 2003 (HY000):Không thể kết nối với máy chủ MySQL trên '127.0.0.1' (111)

  5. MySQL DROP COLUMN