MySQL là gì?. Định nghĩa từ TechTarget

MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) dựa trên Ngôn ngữ truy vấn có cấu trúc (SQL) là nguồn mở và được hỗ trợ bởi Oracle. MySQL chạy trên hầu hết các nền tảng, bao gồm Linux, UNIX và Windows. MySQL thường được kết hợp với các ứng dụng web và xuất bản trực tuyến, mặc dù thực tế là nó có thể được sử dụng trong nhiều ứng dụng khác nhau

LAMP là một nền tảng phát triển web sử dụng Linux làm hệ điều hành, Apache làm máy chủ web, MySQL làm hệ thống quản lý cơ sở dữ liệu quan hệ và PHP làm ngôn ngữ kịch bản hướng đối tượng. MySQL là một thành phần quan trọng của ngăn xếp doanh nghiệp nguồn mở này. (Đôi khi, Perl hoặc Python được sử dụng thay cho PHP. )

Các nhà phát triển có thể sử dụng MySQL theo Giấy phép Công cộng GNU (GPL), nhưng các doanh nghiệp phải mua giấy phép thương mại từ Oracle. Ban đầu được phát triển bởi công ty MySQL AB của Thụy Điển, MySQL đã được Sun Microsystems mua vào năm 2008 và sau đó là Oracle khi mua lại Sun vào năm 2010

Nhiều trang web phổ biến nhất trên thế giới hiện nay, cũng như vô số ứng dụng web dành cho doanh nghiệp và người tiêu dùng, chẳng hạn như Facebook, Twitter và YouTube, sử dụng MySQL làm RDBMS của họ

MySQL hoạt động như thế nào

Trái tim của MySQL là máy chủ MySQL, quản lý tất cả các hướng dẫn cơ sở dữ liệu (hoặc lệnh) và dựa trên kiến ​​trúc máy khách-máy chủ. Cả chương trình độc lập để sử dụng trong môi trường nối mạng máy khách-máy chủ và thư viện có thể được nhúng (hoặc liên kết) vào các ứng dụng khác nhau đều có sẵn cho máy chủ MySQL

Các lệnh được gửi đến MySQL Server thông qua ứng dụng khách MySQL, được cài đặt trên máy tính và hoạt động cùng với một số chương trình tiện ích để hỗ trợ quản trị cơ sở dữ liệu MySQL

Mặc dù MySQL thường chỉ được cài đặt trên một máy, nhưng nó có thể gửi cơ sở dữ liệu đến nhiều vị trí vì người dùng có thể truy cập nó thông qua các giao diện máy khách MySQL khác nhau, ban đầu được thiết kế để xử lý các cơ sở dữ liệu lớn một cách nhanh chóng. Các giao diện người dùng này truyền các lệnh SQL đến máy chủ, sau đó hiển thị kết quả

Các tính năng cốt lõi của MySQL

MySQL có thể sao chép dữ liệu và bảng phân vùng để có hiệu suất và độ bền tốt hơn, đồng thời có thể lưu trữ và truy cập dữ liệu trên nhiều công cụ lưu trữ, bao gồm InnoDB, CSV và NDB. Người dùng MySQL không phải học các lệnh mới;

RDBMS hỗ trợ các cơ sở dữ liệu lớn với hàng triệu bản ghi và nhiều loại dữ liệu, bao gồm các số nguyên có dấu hoặc không dấu dài 1, 2, 3, 4 và 8 byte; . Ngoài ra được hỗ trợ là các loại chuỗi có độ dài cố định và thay đổi

Máy khách MySQL có thể kết nối với Máy chủ MySQL bằng nhiều giao thức khác nhau, bao gồm ổ cắm TCP/IP trên mọi nền tảng và MySQL sử dụng đặc quyền truy cập và hệ thống mật khẩu được mã hóa để cho phép xác minh dựa trên máy chủ. Một số chương trình máy khách và tiện ích, chương trình dòng lệnh và công cụ quản trị như MySQL Workbench cũng được MySQL hỗ trợ

Sau đây là các ví dụ về rẽ nhánh hoặc nhánh con của MySQL

  • dựa trên MySQL 6. 0, hệ thống quản lý cơ sở dữ liệu nguồn mở nhẹ tên là Drizzle;
  • MariaDB, một giải pháp thay thế "thả vào" nguồn mở, phổ biến cho MySQL, sử dụng các lệnh và API của MySQL;
  • Phiên bản cải tiến của MySQL được biết đến với khả năng mở rộng theo chiều ngang, Máy chủ Percona với XtraDB

MySQL so với SQL

Trước năm 2016, điểm khác biệt chính giữa MySQL và SQL là cái trước có thể được sử dụng trên nhiều nền tảng trong khi cái sau chỉ có thể được sử dụng trên Windows. Tuy nhiên, vào năm 2017, Microsoft đã mở rộng SQL để hỗ trợ Linux. Hệ thống quản lý gói của Linux cần được tùy chỉnh để điều chỉnh cài đặt bảo mật và tối ưu hóa khi cài đặt MySQL

Ngoài ra, vì chương trình có thể sử dụng nhiều công cụ lưu trữ cho các bảng cụ thể, bao gồm cả InnoDB, nên MySQL cung cấp cho người dùng tùy chọn để chọn công cụ lưu trữ tốt nhất cho bất kỳ bảng cụ thể nào. Vì InnoDB được tạo ra để có tính sẵn sàng cao, nên nó chậm hơn các công cụ khác. Cả hai hệ thống đều có thể chạy theo cụm để có tính sẵn sàng cao, với SQL sử dụng hệ thống lưu trữ riêng nhưng vẫn duy trì nhiều biện pháp bảo vệ chống mất dữ liệu

Công cụ báo cáo và phân tích dữ liệu phổ biến nhất do SQL Server cung cấp, SQL Server Reporting Services, có thể truy cập dưới dạng tải xuống miễn phí. Các công cụ phân tích tương tự dành cho MySQL được cung cấp bởi các nhà cung cấp phần mềm độc lập như Actuate BIRT và Crystal Reports XI

Khả năng tương thích với các dịch vụ khác

Để triển khai trong môi trường ảo hóa, MySQL tương thích với các dịch vụ như Amazon RDS for MySQL, Amazon RDS for MariaDB và Amazon Aurora for MySQL. Bằng cách sử dụng các công cụ di chuyển cơ sở dữ liệu như Công cụ chuyển đổi lược đồ AWS và Dịch vụ di chuyển cơ sở dữ liệu AWS, người dùng có thể di chuyển dữ liệu của họ sang cơ sở dữ liệu SQL Server

Mặc dù ngữ nghĩa đối tượng cơ sở dữ liệu của SQL Server và MySQL tương tự nhau nhưng không đồng nhất, nhưng có những khác biệt về kiến ​​trúc phải được tính đến khi chuyển từ SQL Server sang MySQL. Cơ sở dữ liệu và lược đồ được SQL Server coi là các thực thể riêng biệt, trong khi không có sự phân biệt giữa chúng trong MySQL

MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở (RDBMS) được hỗ trợ bởi Oracle dựa trên Ngôn ngữ truy vấn có cấu trúc (SQL). MySQL chạy trên hầu hết mọi nền tảng, bao gồm Linux, UNIX và Windows. Mặc dù nó có thể được sử dụng trong nhiều ứng dụng, nhưng MySQL thường được kết hợp với các ứng dụng web và xuất bản trực tuyến

MySQL là một thành phần quan trọng của ngăn xếp doanh nghiệp mã nguồn mở có tên là LAMP. LAMP là một nền tảng phát triển web sử dụng Linux làm hệ điều hành, Apache làm máy chủ web, MySQL làm hệ thống quản lý cơ sở dữ liệu quan hệ và PHP làm ngôn ngữ kịch bản hướng đối tượng. (Đôi khi Perl hoặc Python được sử dụng thay vì PHP. )

Ban đầu được hình thành bởi công ty MySQL AB của Thụy Điển, MySQL đã được Sun Microsystems mua lại vào năm 2008 và sau đó là Oracle khi mua lại Sun vào năm 2010. Các nhà phát triển có thể sử dụng MySQL theo Giấy phép Công cộng GNU (GPL), nhưng các doanh nghiệp phải có giấy phép thương mại từ Oracle

Ngày nay, MySQL là RDBMS đằng sau nhiều trang web hàng đầu trên thế giới và vô số ứng dụng dựa trên web dành cho doanh nghiệp và người tiêu dùng, bao gồm Facebook, Twitter và YouTube

MySQL hoạt động như thế nào

MySQL dựa trên mô hình client-server. Cốt lõi của MySQL là máy chủ MySQL, xử lý tất cả các hướng dẫn cơ sở dữ liệu (hoặc lệnh). Máy chủ MySQL có sẵn dưới dạng một chương trình riêng biệt để sử dụng trong môi trường mạng máy khách-máy chủ và dưới dạng thư viện có thể được nhúng (hoặc liên kết) vào các ứng dụng riêng biệt

MySQL hoạt động cùng với một số chương trình tiện ích hỗ trợ quản trị cơ sở dữ liệu MySQL. Các lệnh được gửi đến MySQLServer thông qua ứng dụng khách MySQL, được cài đặt trên máy tính

MySQL ban đầu được phát triển để xử lý các cơ sở dữ liệu lớn một cách nhanh chóng. Mặc dù MySQL thường chỉ được cài đặt trên một máy, nhưng nó có thể gửi cơ sở dữ liệu đến nhiều vị trí, vì người dùng có thể truy cập nó thông qua các giao diện máy khách MySQL khác nhau. Các giao diện này gửi câu lệnh SQL đến máy chủ và sau đó hiển thị kết quả

Các tính năng cốt lõi của MySQL

MySQL cho phép dữ liệu được lưu trữ và truy cập trên nhiều công cụ lưu trữ, bao gồm InnoDB, CSV và NDB. MySQL cũng có khả năng sao chép dữ liệu và phân vùng bảng để có hiệu suất và độ bền tốt hơn. Người dùng MySQL không bắt buộc phải học các lệnh mới;

MySQL được viết bằng C và C++, có thể truy cập và khả dụng trên hơn 20 nền tảng, bao gồm Mac, Windows, Linux và Unix. RDBMS hỗ trợ cơ sở dữ liệu lớn với hàng triệu bản ghi và hỗ trợ nhiều loại dữ liệu bao gồm số nguyên có dấu hoặc không dấu dài 1, 2, 3, 4 và 8 byte; . Các loại chuỗi có độ dài cố định và thay đổi cũng được hỗ trợ

Để bảo mật, MySQL sử dụng đặc quyền truy cập và hệ thống mật khẩu được mã hóa cho phép xác minh dựa trên máy chủ. Máy khách MySQL có thể kết nối với Máy chủ MySQL bằng một số giao thức, bao gồm ổ cắm TCP/IP trên mọi nền tảng. MySQL cũng hỗ trợ một số chương trình máy khách và tiện ích, chương trình dòng lệnh và công cụ quản trị như MySQL Workbench

Các nhánh của MySQL, còn được gọi là nhánh, bao gồm những điều sau đây.  

  • Drizzle, một hệ thống quản lý cơ sở dữ liệu nguồn mở nhẹ đang được phát triển dựa trên MySQL 6. 0;
  • MariaDB, một sự thay thế "thả vào" phổ biến do cộng đồng phát triển cho MySQL sử dụng các lệnh và API của MySQL;
  • Máy chủ Percona với XtraDB, phiên bản nâng cao của MySQL được biết đến với khả năng mở rộng theo chiều ngang.  

MySQL so với SQL

Trước năm 2016, sự khác biệt chính giữa MySQL và SQL là cái trước có thể được sử dụng trên nhiều nền tảng, trong khi cái sau chỉ có thể được sử dụng trên Windows. Kể từ đó, Microsoft đã mở rộng SQL để hỗ trợ Linux, một thay đổi có hiệu lực vào năm 2017. Khi MySQL được cài đặt qua Linux, hệ thống quản lý gói của nó yêu cầu cấu hình tùy chỉnh để điều chỉnh cài đặt bảo mật và tối ưu hóa

MySQL cũng cho phép người dùng chọn công cụ lưu trữ hiệu quả nhất cho bất kỳ bảng nào, vì chương trình có thể sử dụng nhiều công cụ lưu trữ cho các bảng riêng lẻ. Một trong những công cụ của MySQL là InnoDB. InnoDB được thiết kế cho tính sẵn sàng cao. Vì điều này, nó không nhanh như các động cơ khác. SQL sử dụng hệ thống lưu trữ của riêng mình, nhưng nó duy trì nhiều biện pháp bảo vệ chống mất dữ liệu. Cả hai hệ thống đều có thể chạy theo cụm để có tính sẵn sàng cao

SQL Server cung cấp nhiều công cụ báo cáo và phân tích dữ liệu. SQL Server Reporting Services là dịch vụ phổ biến nhất và có sẵn dưới dạng tải xuống miễn phí. Có các công cụ phân tích tương tự cho MySQL có sẵn từ các công ty phần mềm bên thứ ba, chẳng hạn như Crystal Reports XI và Actuate BIRT

Khả năng tương thích với các dịch vụ khác

MySQL được thiết kế để tương thích với các hệ thống khác. Nó hỗ trợ triển khai trong các môi trường ảo hóa, chẳng hạn như Amazon RDS cho MySQL, Amazon RDS cho MariaDB và Amazon Aurora cho MySQL. Người dùng có thể chuyển dữ liệu của họ sang cơ sở dữ liệu SQL Server bằng cách sử dụng các công cụ di chuyển cơ sở dữ liệu như Công cụ chuyển đổi lược đồ AWS và Dịch vụ di chuyển cơ sở dữ liệu AWS

Ngữ nghĩa đối tượng cơ sở dữ liệu giữa SQL Server và MySQL là tương tự nhau, nhưng không giống nhau. Có những khác biệt về kiến ​​trúc phải được xem xét khi di chuyển từ SQL Server sang MySQL. Trong MySQL, không có sự khác biệt giữa cơ sở dữ liệu và lược đồ, trong khi SQL Server coi hai cơ sở dữ liệu này là các thực thể riêng biệt

Định nghĩa đơn giản về MySQL là gì?

MySQL là hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) do Oracle phát triển dựa trên ngôn ngữ truy vấn có cấu trúc (SQL) . Cơ sở dữ liệu là một tập hợp dữ liệu có cấu trúc. Nó có thể là bất cứ thứ gì, từ danh sách mua sắm đơn giản đến thư viện ảnh hoặc nơi chứa lượng thông tin khổng lồ trong mạng công ty.

MySQL là gì và các chức năng của nó?

MySQL là hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) dựa trên các truy vấn SQL (Ngôn ngữ truy vấn có cấu trúc) . Đây là một trong những ngôn ngữ phổ biến nhất để truy cập và quản lý các bản ghi trong bảng. MySQL là phần mềm mã nguồn mở và miễn phí theo giấy phép GNU. Công ty Oracle hỗ trợ nó.

Sự khác biệt giữa SQL và MySQL là gì?

SQL là ngôn ngữ lập trình truy vấn quản lý RDBMS. MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ sử dụng SQL . SQL chủ yếu được sử dụng để truy vấn và vận hành các hệ thống cơ sở dữ liệu. MySQL cho phép bạn xử lý, lưu trữ, sửa đổi và xóa dữ liệu và lưu trữ dữ liệu một cách có tổ chức.