Để xác định phương pháp kết nối MySQL client dùng, chạy lệnh:
netstat -ln | grep 'mysql'
Trên Unix, chương trình MySQL xử lý hostname localhost đặc biệt. Do đó hành vi khác kỳ vọng.
Loại kết nối
Để biết loại kết nối từ trong CLI mysql, dùng:
mysql> \s
Kết quả:
Connection: 127.0.0.1 via TCP/IP # hoặc Connection: Localhost via UNIX socket
Kết nối TCP/IP tới server cục bộ:
Đảm bảo client kết nối TCP/IP tới server cục bộ, dùng --host hoặc -h với giá trị 127.0.0.1, hoặc IP/ten server cục bộ. Giao thức cũng chỉ định rõ cho localhost bằng --protocol=TCP:
shell> mysql --host=127.0.0.1 shell> mysql --protocol=TCP
Tùy chọn --protocol={TCP|SOCKET|PIPE|MEMORY} chỉ định rõ giao thức phải dùng kết nối server.
Kết nối Unix tới localhost
Kết nối Unix tới localhost mặc định dùng Unix socket file:
shell> mysql --host=localhost
Buộc dùng TCP/IP, chỉ định --protocol:
shell> mysql --host=localhost --protocol=TCP
Một số loại giao thức:
- TCP – TCP/IP kết nối server cục bộ/từ xa. Mọi nền tảng.
- SOCKET – Unix socket file kết nối server cục bộ. Chỉ Unix.
- PIPE – Named-pipe kết nối server cục bộ/từ xa. Chỉ Windows.
- MEMORY – Shared-memory kết nối server cục bộ. Chỉ Windows.