Phiên bản cộng đồng MySQL là hệ thống quản lý cơ sở dữ liệu quan hệ nguồn mở, đa nền tảng, được sử dụng rộng rãi và rất nhanh (RDBMS). Nó bao gồm cả việc triển khai máy khách và máy chủ, bao gồm một trình nền máy chủ (mysqld) và nhiều chương trình và thư viện máy khách khác nhau.
Tính năng trong nháy mắt
Ban đầu được tạo ra bởi Sun Microsystems (bây giờ được Oracle duy trì), MySQL không chỉ là "cơ sở dữ liệu nguồn mở phổ biến nhất thế giới" vì nó có tính năng kết nối, nhân bản, phân vùng, bàn làm việc, màn hình doanh nghiệp, bảng điều khiển và cố vấn, phân tích truy vấn , màn hình sao chép và các tính năng sao lưu của doanh nghiệp. Nó chạy trên hệ điều hành Linux, Solaris, BSD, Mac OS X và Windows.
Ngoài ra, máy chủ cơ sở dữ liệu MySQL cũng cung cấp cho bạn các chức năng sao lưu đầy đủ, gia tăng và một phần, khôi phục toàn bộ và một phần, khôi phục điểm-trong-thời gian, xác thực bên ngoài, tuân thủ kiểm toán dựa trên chính sách, nhóm luồng, trình quản lý cụm, tự động mở rộng quy mô, cũng như các tính năng sao chép địa lý cụm.
Hỗ trợ một loạt các công cụ lưu trữ
Trong số các công cụ lưu trữ được hỗ trợ bởi MySQL, chúng tôi có thể đề cập đến MyISAM, InnoDB và NDB. Hot backup cho InnoDB1 cũng được cung cấp. Cộng đồng được cung cấp miễn phí và tích cực duy trì và được hỗ trợ bởi cộng đồng những người đam mê và nhà phát triển nguồn mở từ khắp nơi trên thế giới.
Hỗ trợ tất cả các bản phân phối GNU / Linux
MySQL đã được thiết kế để chạy trên các hệ điều hành dựa trên hạt nhân Linux, có nghĩa là nó có thể dễ dàng được cài đặt trên bất kỳ bản phân phối GNU / Linux nào với nỗ lực tối thiểu. Nó có sẵn để tải xuống như các gói nhị phân dựng sẵn cho Ubuntu, Debian, SUSE Linux Enterprise Server, Oracle Linux, Red Hat Enterprise Linux và bất kỳ hệ điều hành Linux nào khác, hỗ trợ cả kiến trúc 32 bit và 64 bit.
Cấu hình thông qua phpMyAdmin
MySQL là một chương trình máy chủ, có nghĩa là nó chạy trong nền, như một daemon. Bạn có thể tương tác với nó thông qua dòng lệnh, nhưng cách tốt nhất để quản lý cơ sở dữ liệu là sử dụng giao diện người dùng đồ họa. MySQL front-end tốt nhất hiện nay là không có nghi ngờ phpMyAdmin, cung cấp cho người dùng một giao diện dựa trên web có thể truy cập từ hầu như mọi nơi.
Có gì mới trong bản phát hành này:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 8.0.11 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.19 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.18 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.17 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.16 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.15 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.14 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.13 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.11 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.7.10 GA:
- Ghi chú Bảo mật:
- Trước đây, MySQL chỉ hỗ trợ giao thức TLSv1 cho các kết nối được mã hóa. Hỗ trợ TLS đã được mở rộng để cho phép mức bảo mật kết nối được mã hóa cao hơn ...
- Khi được biên dịch bằng cách sử dụng phiên bản yaSSL đi kèm, MySQL hỗ trợ giao thức TLSv1 và TLSv1.1.
- Khi được biên dịch bằng OpenSSL 1.0.1 trở lên, MySQL hỗ trợ giao thức TLSv1, TLSv1.1 và TLSv1.2.
- Theo mặc định, MySQL cố gắng sử dụng phiên bản giao thức TLS cao nhất có sẵn, tùy thuộc vào thư viện SSL nào được sử dụng để biên dịch máy chủ và ứng dụng khách và kích thước khóa nào được sử dụng.
- Vì TLSv1.2 yêu cầu OpenSSL, hỗ trợ cho giao thức này có sẵn trong các bản phân phối nhị phân chỉ dành cho Máy chủ Thương mại MySQL và không dành cho Máy chủ Cộng đồng MySQL (được biên dịch bằng yaSSL). Để bật hỗ trợ TLSv1.2 nếu bạn xây dựng từ nguồn, bạn phải đặt tùy chọn WITH_SSL CMake để sử dụng OpenSSL khi định cấu hình MySQL.
- Biến hệ thống tls_version mới cho phép các giao thức TLS được máy chủ cho phép được chỉ định khi khởi động. Về phía máy khách, tùy chọn --tls-phiên bản cho phép các giao thức TLS được các chương trình máy khách cho phép được chỉ định cho mỗi yêu cầu của máy khách.
- Hàm mysql_options () C có tùy chọn MYSQL_OPT_TLS_VERSION mới cho phép các giao thức TLS được chương trình máy khách cho phép được chỉ định từ bên trong thư viện khách.
- Đã thêm hoặc thay đổi chức năng:
- InnoDB: Biến hệ thống innodb_support_xa, cho phép hỗ trợ cho cam kết hai pha trong các giao dịch XA, không được chấp nhận. Hỗ trợ InnoDB cho cam kết hai pha trong các giao dịch XA luôn được kích hoạt như của MySQL 5.7.10. Vô hiệu hóa innodb_support_xa không còn được cho phép vì nó làm cho bản sao không an toàn và ngăn các lợi ích hiệu suất liên quan đến cam kết nhóm đăng nhập nhị phân.
Tính năng mới trong phiên bản 5.6.26 GA / 5.7.5 Milestone 16:
- Bản phát hành này thêm hỗ trợ cho Debian 8 và Ubuntu 15.04.
Tính năng mới trong phiên bản 5.6.25 GA / 5.7.5 Milestone 16:
- Ghi chú Bảo mật:
- Thư viện OpenSSL được liên kết cho Máy chủ thương mại MySQL đã được cập nhật từ phiên bản 1.0.1j lên phiên bản 1.0.1k. Các sự cố được khắc phục trong phiên bản mới được mô tả tại http://www.openssl.org/news/vulnerabilities.html.
- Thay đổi này không ảnh hưởng đến bản dựng MySQL Community do MySQL tạo ra của MySQL Server, sử dụng thư viện yaSSL thay thế. (Lỗi # 20375530)
- Đã thêm hoặc thay đổi chức năng:
- Hỗ trợ giao thức SSL 2.0 và SSL 3.0 đã bị vô hiệu hóa vì chúng cung cấp mã hóa yếu. (Lỗi # 19820550)
- yaSSL đã được nâng cấp lên phiên bản 2.3.7. (Lỗi # 19695101, Lỗi # 20201864)
- Phạm vi ngày hợp lệ của chứng chỉ SSL trong thử nghiệm mysql / std_data đã được kéo dài đến năm 2029. (Lỗi # 18366947)
- Lỗi đã sửa:
- InnoDB: Một hoạt động xuất vùng bảng thiết lập trạng thái thanh lọc thành PURGE_STATE_STOP nhưng luồng thanh lọc không kiểm tra trạng thái thanh lọc cho đến khi hoàn thành hoạt động thanh lọc hiện tại. Trong trường hợp của một danh sách lịch sử lớn, hoạt động xuất vùng bảng được trì hoãn, đợi cho hoạt động thanh lọc hiện tại kết thúc. Trạng thái thanh lọc bây giờ được kiểm tra với mỗi lô thanh lọc. (Lỗi # 20266847, Lỗi # 75298)
- InnoDB: BẢNG ALTER ... THÊM hoạt động INDEX đã đưa ra một xác nhận do mã xác nhận không cho phép trạng thái chỉ mục trực tuyến của ONLINE_INDEX_ABORTED_DROPPED. Mã xác nhận đã được thư giãn. (Lỗi # 20198726)
- InnoDB: Đã xảy ra lỗi khi hàm push_warning_printf được gọi trong khi khôi phục máy chủ. Chức năng này trước đây được sử dụng để in một thông điệp cảnh báo cho khách hàng. Ngoài ra, current_thd là NULL khi máy chủ được khởi động lại. (Lỗi # 20144839)
- InnoDB: Một hoạt động ALTER TABLE đã thay đổi tên của cột khóa ngoài dẫn đến lỗi khi tải lại ràng buộc khóa ngoài. Tên cột trước đó vẫn còn trong bộ nhớ cache từ điển dữ liệu thay vì bị loại bỏ. (Lỗi # 20031243)
- InnoDB: Thông báo lỗi về giới hạn kích thước trên dữ liệu BLOB hoặc TEXT được chèn vào trong một giao dịch đã được sửa đổi. (Lỗi # 19975322)
- InnoDB: Các hoạt động DML trên một bảng có chỉ mục tìm kiếm toàn văn đã đưa ra một xác nhận không hợp lệ. (Lỗi # 19905246)
- Tham khảo: Lỗi này là hồi quy Lỗi # 19314480.
- InnoDB: Thao tác xóa nhiều bảng khiến máy chủ tạm dừng. (Lỗi # 19815702)
- InnoDB: Một thao tác FLUSH TABLES đã đưa ra một xác nhận. (Lỗi # 19803418)
- InnoDB: Với việc thay đổi bộ đệm được kích hoạt, một chuỗi các hoạt động đệm không được đệm đã dẫn đến việc Không thể xóa một lỗi bản ghi. (Lỗi # 19528825, Lỗi # 73767)
- InnoDB: Trên các nền tảng không phải Windows, các hàm os-file_pread và os_file_pwrite trả về -1 khi xảy ra lỗi. Giá trị này được in trong một thông báo lỗi khi số byte được đọc hoặc ghi. Thay vì in giá trị -1 trong thông báo lỗi, một thông báo lỗi riêng biệt cho biết lỗi cuộc gọi hệ thống hiện đã được in. Cảm ơn David Bennett vì bản vá. (Lỗi # 19315210, Lỗi # 73365)
- InnoDB: Tắt máy chậm (innodb_fast_shutdown = 0) sau khi khôi phục sự cố đã đưa ra một xác nhận. Việc tắt máy chậm đã không đợi cho các thao tác lùi lại nền hoàn thành trước khi tiếp tục. (Lỗi # 16862810)
- InnoDB: Giá trị cột số nguyên được xử lý không chính xác cho lệnh incr và decrach memcached. (Lỗi # 69415, Lỗi # 20083106, Lỗi # 74874, Lỗi # 20044123)
- Phân vùng: TÊN ALTER thất bại ... Câu lệnh TRUNCATE PARTITION hoặc câu lệnh TRUNCATE TABLE không thành công đối với bảng được phân đoạn đôi khi để lại siêu dữ liệu không nhất quán trong bộ nhớ cache của bảng; các câu lệnh SQL tiếp theo sử dụng lại siêu dữ liệu này không thành công, và có thể trong một số trường hợp cũng dẫn đến sự thất bại của máy chủ. (Lỗi # 74292, Lỗi # 19786861)
- Nhân rộng: Nếu một chuỗi khách hàng trên một nô lệ thực thi FLUSH TABLES VỚI READ LOCK trong khi chủ thực thi một DML, thực thi SHOW SLAVE STATUS trong cùng một máy khách đã bị chặn, gây ra một bế tắc. Việc sửa chữa đảm bảo rằng khóa đọc chỉ được giữ trong thời gian nhật ký chuyển tiếp đang được cập nhật và bế tắc được tránh. (Lỗi # 19843808)
- Nhân rộng: Khi một giao dịch XA được kích hoạt, thực hiện một rollback nội bộ, ví dụ bằng cách sử dụng câu lệnh BINLOG, dẫn đến một xác nhận. Việc sửa chữa đảm bảo rằng một rollback xảy ra chỉ cho một nô lệ khi một giao dịch kéo dài nhiều tệp nhật ký nhị phân. Rollback không xảy ra ngay bây giờ nếu Format_description xuất phát từ câu lệnh BINLOG đang được thực hiện trong máy khách MySQL. (Lỗi # 74597, Lỗi # 19928622)
- Nhân rộng: Trong sử dụng bình thường, không thể cho một nô lệ có nhiều GTID hơn so với tổng thể. Nhưng trong một số trường hợp nhất định, chẳng hạn như sau khi lỗi phần cứng hoặc bị xóa không đúng gtid_purged, nhật ký nhị phân của chủ có thể bị cắt bớt. Sửa chữa này đảm bảo rằng trong tình huống như vậy, chủ bây giờ phát hiện ra rằng nô lệ có giao dịch với GTID mà không phải là trên tổng thể. Lỗi hiện được tạo trên slave và chuỗi I / O bị dừng với lỗi. Chủ đề kết thúc của chủ cũng bị dừng lại. Điều này ngăn không nhất quán dữ liệu trong quá trình nhân rộng. (Lỗi # 72635, Lỗi # 18789758)
- Nhân rộng: Khi sử dụng SHOW SLAVE STATUS để giám sát hiệu suất nhân bản, Seconds_Behind_Master đôi khi hiển thị độ trễ bất ngờ phía sau bản gốc. Điều này được gây ra bởi Previous_gtids_log_events được ghi vào nhật ký relay của slave với dấu thời gian phía sau master, và sau đó được sử dụng để tính toán Seconds_Behind_Master. Sửa chữa này đảm bảo rằng các sự kiện được tạo ra trên slave được thêm vào nhật ký relay và không được sử dụng khi tính toán Seconds_Behind_Master. (Lỗi # 72376, Lỗi # 18622657)
- Trên Ubuntu 14.10, các hoạt động cài đặt MySQL có thể không tải lại được AppArmor. (Lỗi # 20092641)
- GIẢI THÍCH trong giao dịch XA có thể tăng xác nhận. (Lỗi # 19941492)
- Tệp nhật ký nhị phân được tạo bằng cách phát trực tuyến nhật ký nhị phân từ máy chủ từ xa với mysqlbinlog được cấp cho chế độ truy cập dễ dãi hơn các tệp gốc. (Lỗi # 19649868)
- Nếu plugin audit_log gặp phải lỗi đầy đĩa, máy chủ sẽ thoát.
- Bây giờ, nếu hệ thống tệp mà nhật ký kiểm tra được ghi đầy, lỗi "đĩa đầy đủ" được ghi vào nhật ký lỗi. Ghi nhật ký kiểm tra tiếp tục cho đến khi bộ đệm nhật ký kiểm tra đầy. Nếu không gian đĩa trống không được tạo sẵn vào thời điểm bộ đệm lấp đầy, các phiên của máy khách sẽ treo, và dừng máy chủ tại thời điểm các phiên khách hàng treo sẽ dẫn đến việc tham nhũng kiểm tra. Để tránh điều này nếu các phiên máy khách bị treo, hãy đảm bảo rằng không gian trống có sẵn trên hệ thống tệp nhật ký kiểm tra trước khi dừng máy chủ. (Lỗi # 19411485)
- Vì không tạo được bảng tạm thời do không có bộ mô tả tệp, máy chủ đã thoát thay vì trả về lỗi. (Lỗi # 18948649)
- Đối với một số truy vấn chứa một bảng có nguồn gốc (truy vấn phụ trong mệnh đề FROM), sự chậm trễ của hiện thực hóa dẫn đến một kế hoạch thực hiện tối ưu do ước tính số lượng hàng ít chính xác hơn. (Lỗi # 18607971)
- Đối với các câu lệnh UPDATE và DELETE, máy chủ có thể thoát sau khi cố truy cập cấu trúc dữ liệu chưa được khởi tạo. (Lỗi # 18036143)
- Khởi động máy chủ bằng dịch vụ bắt đầu hoặc mysqld_safe có thể dẫn đến việc không sử dụng đúng thư mục plugin. (Lỗi # 17619241)
- BẢNG FLUSH trên bảng FEDERATED không thành công nếu bảng không hoạt động lâu hơn thời gian wait_timeout cộng với thời gian chờ TCP. (Lỗi # 17599258)
- Việc chọn tất cả các cột từ INFORMATION_SCHEMA.TABLES đã không mở lại các bảng nếu chúng nằm trong bộ nhớ cache của bảng, nhưng việc chọn một tập con của các cột đó trong cùng các điều kiện đã mở lại các bảng. (Lỗi # 16869534)
- Nếu my_write () gặp phải tình trạng đầy đủ đĩa, nó có thể trả về giá trị lỗi không chính xác. (Lỗi # 16078792, Lỗi # 19984788)
- Các tìm kiếm toàn văn boolean của InnoDB được xử lý sai + kết hợp với dấu ngoặc đơn; ví dụ: + word1 + (& gt; word2
Bình luận không