Computer >> Máy Tính >  >> Lập trình >> MySQL

Giao thức truyền tải kết nối cho MySQL


Các chương trình như 'mysql' và 'mysqldump', sử dụng thư viện máy khách MySQL có hỗ trợ kết nối MySQL tới máy chủ với sự trợ giúp của nhiều giao thức truyền tải, chẳng hạn như TCP / IP, Unix tệp socket, đường ống được đặt tên, bộ nhớ dùng chung, v.v. Hãy để chúng tôi hiểu các giao thức truyền tải kết nối được sử dụng với MySQL -

Bảng dưới đây hiển thị các giá trị được phép cho --protocol và cũng cho các nền tảng biết nơi mỗi giá trị này có thể áp dụng. Cần lưu ý rằng các giá trị không phân biệt chữ hoa chữ thường.

- giá trị giao thức Giao thức truyền tải được sử dụng Nền tảng áp dụng
TCP TCP / IP Tất cả
Ổ khóa Tệp ổ cắm Unix Unix và hệ thống giống Unix
ỐNG Đường ống có tên Windows
BỘ NHỚ Bộ nhớ dùng chung Windows

TCP / IP

Truyền tải TCP / IP cũng hỗ trợ kết nối với máy chủ MySQL cục bộ hoặc từ xa.

Vận chuyển đường ống được đặt tên

Vận chuyển đường ống được đặt tên cho phép kết nối từ xa, nhưng khả năng này chưa được triển khai trong MySQL kể từ bây giờ. Chỉ hỗ trợ kết nối đến máy chủ MySQL cục bộ. Nó không cần được mã hóa TLS / SSL.

Socket-file

Socket-file transport chỉ hỗ trợ các kết nối đến các máy chủ MySQL cục bộ. Nó có thể được mã hóa TLS / SSL.

Bộ nhớ dùng chung

Nó chỉ vận chuyển các kết nối hỗ trợ đến các máy chủ MySQL cục bộ. Nó không cần được mã hóa TLS / SSL.

Làm cách nào để tạo kết nối an toàn?

Kết nối được bảo mật theo mặc định nếu nó được thiết lập qua một giao thức truyền tải được bảo mật theo mặc định. Ngoài ra, đối với các giao thức được mã hóa TLS / SSL, kết nối có thể được đảm bảo an toàn bằng cách sử dụng mã hóa -

  • Các kết nối TCP / IP không an toàn theo mặc định, nhưng chúng có thể được mã hóa để đảm bảo an toàn.

  • Các kết nối tệp tin được bảo mật theo mặc định. Chúng có thể được mã hóa, nhưng không làm cho nó an toàn hơn và chỉ làm tăng tải CPU.

  • Các kết nối đường ống được đặt tên không an toàn theo mặc định và không cần được mã hóa để đảm bảo an toàn. Nhưng biến hệ thống tên_pipe_full_access_group được cung cấp để giúp kiểm soát người dùng MySQL nào sẽ được cấp quyền sử dụng các kết nối đường ống có tên.

  • Các kết nối bộ nhớ dùng chung được bảo mật theo mặc định.