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

Làm thế nào để buộc MySQL kết nối bằng TCP thay vì ổ cắm Unix?


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.

Đối với một kết nối nhất định, nếu giao thức truyền tải không được chỉ định, nó được xác định là một nhiệm vụ riêng biệt.

Ví dụ

Kết nối với localhost sẽ dẫn đến kết nối tệp socket trên các hệ thống giống Unix và Unix, và nếu không thì kết nối TCP / IP tới 127.0.0.1. Nếu giao thức phải được chỉ định cụ thể, nó được thực hiện bằng cách sử dụng tùy chọn lệnh --protocol.

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 có thể áp dụng
TCP TCP / IP Tất cả
Ổ cắm Tệp ổ cắm Unix Hệ thống giống Unix và Unix
ỐNG Đường ống được đặt tên Windows
BỘ NHỚ Bộ nhớ dùng chung Windows

Truyền tải TCP / IP cũng hỗ trợ kết nối đến máy chủ MySQL cục bộ hoặc từ xa. Socket-file, namespipe và shared-memory-transport chỉ hỗ trợ các kết nối đến các máy chủ MySQL cục bộ. Cần lưu ý rằng vận chuyển đường ống có 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ờ.

Giao thức vận tải - Không được chỉ định

Nếu giao thức truyền tải chưa được chỉ định, thì localhost được hiểu là -

  • Trên các hệ thống giống Unix và Unix, kết nối với máy chủ cục bộ dẫn đến kết nối tệp ổ cắm.

  • Trên các hệ thống khác, kết nối với máy chủ cục bộ dẫn đến kết nối TCP / IP tới 127.0.0.1.

Giao thức vận tải - Được chỉ định

Nếu giao thức truyền tải được chỉ định, thì localhost sẽ được diễn giải dựa trên giao thức cụ thể đó.