Tôi đã gặp lỗi này ngày hôm qua khi cố gắng kết nối với cơ sở dữ liệu mysql của mình sau khi chạy nó với NodeJS. Có rất nhiều thông tin mâu thuẫn trên web do cách bạn tải xuống mysql, phiên bản, hệ điều hành bạn đang sử dụng, v.v.
Để khắc phục nhanh trên hệ thống unix, tôi khuyên bạn nên làm như sau. Các bước bên dưới phù hợp với tôi và có thể cũng phù hợp với bạn. Tuy nhiên, bạn sẽ cần cài đặt HomeBrew nếu chưa có
Khi bạn cố gắng kết nối với máy chủ MySQL của mình thông qua dòng lệnh, bạn có thể gặp lỗi MySQL ERROR 2002 như sau
mysql -uroot -proot ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
ERROR 2002 ở trên xảy ra khi không thể tìm thấy tệp ổ cắm mysql.sock trong hệ thống tệp của bạn
Tệp này được tạo khi máy chủ MySQL được khởi động và bị xóa khi bạn dừng máy chủ
Để khắc phục lỗi này, bạn cần xem máy chủ MySQL đã được cài đặt và chạy trên máy tính chưa
Nếu bạn đang sử dụng Linux, bạn có thể cần cài đặt mysql-server ngoài gói mysql
apt-get install mysql-server mysql
Khi bạn đã cài đặt máy chủ, hãy chạy máy chủ bằng lệnh sau
sudo service mysql start # or sudo /etc/init.d/mysql start
Điều đó sẽ khởi động máy chủ và tạo tệp mysql.sock. Bạn có thể thử kết nối lại với máy chủ MySQL của mình ngay bây giờ
Đối với macOS
Nếu bạn đang sử dụng macOS và đã cài đặt MySQL bằng Homebrew, thì bạn cần đảm bảo rằng máy chủ đã được khởi động bằng lệnh sau
brew services start mysql
Khi MySQL đang chạy, bạn có thể thử kết nối lại bằng lệnh mysql
Cho cửa sổ
Đối với hệ điều hành Windows, bạn cần đảm bảo rằng dịch vụ MySQL đang chạy trong bảng điều khiển apt-get install mysql-server mysql 1
Mở menu Start của Windows và tìm kiếm bảng apt-get install mysql-server mysql 1 để xem kết quả bên dưới
Mở bảng Services trên Windows
Sau đó, cuộn qua danh sách dịch vụ cho đến khi bạn đến được các dịch vụ bắt đầu bằng apt-get install mysql-server mysql 3 để tìm dịch vụ apt-get install mysql-server mysql 4
Thông thường, bạn có số phiên bản MySQL kèm theo tên dịch vụ
Phiên bản MySQL được cài đặt trên máy tính của tôi là MySQL apt-get install mysql-server mysql 5 vì vậy tôi có dịch vụ apt-get install mysql-server mysql 6 được liệt kê như hình bên dưới
Tìm kiếm MySQL trong bảng Dịch vụ
Nếu bạn có MySQL phiên bản 7, thì bạn có thể có apt-get install mysql-server mysql 7 được liệt kê trên bảng Dịch vụ
Như bạn có thể thấy từ hình trên, trạng thái của dịch vụ apt-get install mysql-server mysql 6 trống, có nghĩa là nó hiện không chạy
Nếu bạn thấy trạng thái tương tự, bạn có thể chạy dịch vụ bằng cách nhấp vào liên kết apt-get install mysql-server mysql 9 dịch vụ ở ngăn bên trái
Bây giờ bạn có thể thử kết nối lại với máy chủ MySQL của mình từ Dòng lệnh
Tóm lại, sự cố ERROR 2002 xảy ra khi máy tính của bạn không thể kết nối với máy chủ MySQL vì tệp ổ cắm bị thiếu
Tệp ổ cắm được tạo khi máy chủ MySQL khởi động, vì vậy có thể bạn cần khởi động máy chủ để nó hoạt động
Tôi cũng gặp lỗi tương tự "ERROR 2002 (HY000). Không thể kết nối với máy chủ MySQL cục bộ thông qua ổ cắm '/var/lib/mysql/mysql. vớ' (111)". Tôi đã gỡ cài đặt và cài đặt lại MySQl nhiều lần và đã dành nhiều giờ để khắc phục sự cố. Vấn đề mà tôi nhận thấy là khi tôi thêm thông tin đăng nhập vào. tệp tùy chọn cnf nằm trong /etc/my. cnf vì điều này sẽ gây ra sự cố MySQL khi khởi động dịch vụ và sẽ gây ra lỗi
Để giải quyết vấn đề này, tôi đã xóa thông tin đăng nhập khỏi tài khoản của mình. tệp tùy chọn cnf trong/etc/my. cnf và tôi tạo một. Của tôi. tệp tùy chọn cnf trong thư mục chính. Ví dụ: /home/tên người dùng/. Của tôi. cnf trong Linux (thay thế tên người dùng bằng tên người dùng của bạn trong Linux) và thêm thông tin đăng nhập vào đó. Không có vấn đề gì sau đó