Tôi gặp lỗi sau khi cố gắng kết nối với mysql. 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. sock' [2] Có giải pháp nào cho lỗi này khô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 đó
Điều đó có nghĩa là máy chủ MySQL chưa được cài đặt/đang chạy hoặc tệp mysql.sock
không tồn tại trong /var/lib/mysql/
Có một vài giải pháp cho lỗi này
1. Trước tiên, hãy kiểm tra xem dịch vụ mysqld có đang chạy hay không. Nếu không, bắt đầu nó
service mysqld start
Sau đó thử kết nối lại
2. Cố gắng kết nối với 127.0.0.1
thay vì localhost
Nếu bạn kết nối với localhost
, nó sẽ sử dụng đầu nối ổ cắm, nhưng nếu bạn kết nối với 127.0.0.1
thì đầu nối TCP/IP sẽ được sử dụng. Vì vậy, khi đầu nối ổ cắm không hoạt động, thay vào đó hãy thử kết nối với 127.0.0.1
3. Chỉnh sửa tệp
service mysqld start
1Tìm file
service mysqld start
1 [thường là trong service mysqld start
3] để chỉnh sửa và thêm vào những dòng sau[mysqld]
socket=/var/lib/mysql/mysql.sock
[client]
socket=/var/lib/mysql/mysql.sock
Khởi động lại mysql và kết nối lại
4. liên kết tượng trưng
Trong một số trường hợp, bạn mysql.sock
có thể nằm trong một thư mục khác. Bạn phải tìm và liên kết tượng trưng nó. Bạn có thể tìm thấy nó trong
service mysqld start
5 hoặc service mysqld start
6Ví dụ: tệp của bạn được đặt tại
service mysqld start
5Sau đó liên kết tượng trưng nó
________số 8_______
Khởi động lại mysql và kết nối lại
Cần một Công cụ GUI tốt cho MySQL? .
Tôi cũng gặp sự cố này khi cố gắng khởi động máy chủ, rất nhiều câu trả lời ở đây chỉ nói khởi động máy chủ không hoạt động. Điều đầu tiên bạn có thể làm là thực hiện các thao tác sau để xem có lỗi cấu hình nào không
/usr/sbin/mysqld --verbose --help 1>/dev/null
Tôi đã có một lỗi xuất hiện
160816 19:24:33 [Note] /usr/sbin/mysqld [mysqld 5.5.50-0ubuntu0.14.04.1-log] starting as process 9461 ...
160816 19:24:33 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
160816 19:24:33 [Note] Plugin 'FEDERATED' is disabled.
160816 19:24:33 [ERROR] /usr/sbin/mysqld: unknown variable 'innodb-online-alter-log-max-size=4294967296'
160816 19:24:33 [ERROR] Aborting
Một grep -HR "innodb-online-alter-log-max-size" /etc/mysql/
đơn giản cho tôi thấy chính xác tệp nào chứa dòng vi phạm, vì vậy tôi đã xóa dòng đó khỏi tệp
Sau đó, kiểm tra tệp /var/log/mysql/error.log
của tôi mà tôi có
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 671088640 bytes!
160816 22:46:46 [ERROR] Plugin 'InnoDB' init function returned error.
160816 22:46:46 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
160816 22:46:46 [ERROR] Unknown/unsupported storage engine: InnoDB
160816 22:46:46 [ERROR] Aborting
Dựa trên câu hỏi này, giải pháp được chấp nhận sẽ không hoạt động vì tôi thậm chí không thể khởi động máy chủ, vì vậy tôi đã làm theo những gì một số nhận xét đã nói và xóa các tệp /var/lib/mysql/ib_logfile0
và /var/lib/mysql/ib_logfile1
của mình
Điều này cho phép máy chủ khởi động và tôi có thể kết nối và thực hiện các truy vấn, tuy nhiên khi kiểm tra tệp nhật ký lỗi của tôi, nó nhanh chóng bị lấp đầy với vài chục nghìn dòng như thế này
160816 22:52:15 InnoDB: Error: page 1415 log sequence number 82039318708
InnoDB: is in the future! Current system log sequence number 81640793100.
InnoDB: Your database may be corrupt or you may have copied the InnoDB
InnoDB: tablespace but not the InnoDB log files. See
InnoDB: //dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html
InnoDB: for more information.
Dựa trên một gợi ý từ tại đây , để khắc phục điều này, tôi đã thực hiện mysqldump và khôi phục tất cả các cơ sở dữ liệu [xem liên kết để biết một số giải pháp khác]