Vì bạn có mysql trên máy tính cục bộ, bạn không cần phải bận tâm đến địa chỉ IP của máy. Chỉ cần sử dụng localhost:
mysql -u user -p
hoặc
mysql -hlocalhost -u user -p
Nếu bạn không thể đăng nhập với điều này, bạn phải tìm hiểu những gì tên người dùng (user @ host) tồn tại trong MySQL Server locallly. Dưới đây là những gì bạn cần làm:
Bước 01) Startup mysql để không có mật khẩu được yêu cầu không có mật khẩu và từ chối kết nối TCP/IP
service mysql restart --skip-grant-tables --skip-networking
Hãy ghi nhớ rằng SQL chuẩn cho thêm người dùng, cấp và thu hồi privs bị tắt.
Bước 02) Hướng dẫn người dùng host
select concat(''',user,'''@''',host,'''') userhost,password from mysql.user;
Bước 03) Kiểm tra mật khẩu của bạn để chắc chắn rằng nó hoạt động
select user,host from mysql.user where password=password('YourMySQLPassword');
Nếu mật khẩu của bạn sản xuất không có đầu ra cho truy vấn này, bạn có một xấu mật khẩu.
Nếu mật khẩu của bạn tạo đầu ra cho truy vấn này, hãy xem người dùng và máy chủ. Nếu giá trị lưu trữ của bạn là '%', bạn sẽ có thể kết nối từ mọi nơi. Nếu máy chủ lưu trữ của bạn là 'localhost', bạn sẽ có thể kết nối cục bộ.
Làm cho người dùng bạn có 'root' @ 'localhost' được xác định.
Một khi bạn đã làm những gì cần thiết, chỉ cần khởi động lại mysql thường
service mysql restart
Nếu bạn có thể kết nối thành công trên macbook, chạy truy vấn này:
SELECT USER(),CURRENT_USER();
USER() báo cáo như thế nào bạn cố gắng để xác thực trong MySQL
CURRENT_USER() báo cáo cách bạn được phép xác thực trong MySQL
Hãy cho chúng tôi biết điều gì xảy ra !!!
CẬP NHẬT 2012/02/13 20:47 EDT
Đăng nhập vào máy chủ và lặp lại từ xa Bước 1-3
Xem nếu bất kỳ người dùng cho phép truy cập từ xa (ví dụ, máy chủ trong mysql.user là ' % '). Nếu không, hãy thêm 'user' @ '%' vào mysql.user.
Nếu bạn có câu hỏi mới (và vấn đề xác thực khác với vấn đề kết nối), vui lòng nghiên cứu lại và nếu bạn không tìm thấy câu trả lời (tôi rất nghi ngờ), hãy đặt câu hỏi mới. Ngoài ra, xin vui lòng đọc một trong nhiều người mới bắt đầu giới thiệu vào MySQL - mà nên trả lời câu hỏi của bạn ngay lập tức. –