Plugin mysql auth_socket không được tải

Gần đây tôi đã gặp phải lỗi này “ERROR 1524 (HY000). Plugin ‘unix_socket’ không được tải” trên máy chủ Debian 9 của tôi trong khi cố xác thực cơ sở dữ liệu MariaDB với tư cách người dùng root. Sau khi tra cứu trên Google, tôi thấy cách giải quyết cho lỗi này là khởi động dịch vụ MySQL với

$ sudo mysqld_safe --skip-grant-tables &
[1] 8197
1 và đặt lại mật khẩu gốc

VMWare Workstation Cài Đặt Dễ Dàng Cen

Vui lòng bật JavaScript

Máy trạm VMWare dễ dàng cài đặt CentOS 7

Bước 1. Dừng dịch vụ mysql

Dừng dịch vụ MySQL

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop

Bước 2. Bắt đầu mysql với mysqld_safe

Sau đó bắt đầu dịch vụ mysql với

$ sudo mysqld_safe --skip-grant-tables &
[1] 8197
1andoption
$ sudo mysqld_safe --skip-grant-tables &
[1] 8197
3và tiếp tục chạy nền

$ sudo mysqld_safe --skip-grant-tables &
[1] 8197

Bước 3. Đặt lại mật khẩu người dùng root

Mở bảng điều khiển đầu cuối MySQL

$ sudo mysql -uroot
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.3.14-MariaDB-1:10.3.14+maria~stretch mariadb.org binary distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Bạn nên truy cập thiết bị đầu cuối MySQL mà không cần xác thực mật khẩu. Bây giờ chuyển sang cơ sở dữ liệu

$ sudo mysqld_safe --skip-grant-tables &
[1] 8197
4

MariaDB [(none)]> USE mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

Đặt lại mật khẩu người dùng root

________số 8

Thay thế

$ sudo mysqld_safe --skip-grant-tables &
[1] 8197
5 bằng mật khẩu mới của bạn cho người dùng root

Đồng thời đặt plugin Xác thực thành gốc

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
0

Đóng phiên cơ sở dữ liệu của bạn

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
1

Bước 4. Bắt đầu Dịch vụ MySQL bình thường

Khởi động lại dịch vụ mysql theo cách tiêu chuẩn. Nhưng trước tiên hãy dừng dịch vụ

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
2

Đảm bảo không có tiến trình nào khác đang chạy

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
3

bắt đầu mysql

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
4

Kiểm tra quyền truy cập với tư cách người dùng root

$ sudo mysqld_safe --skip-grant-tables &
[1] 8197
0

Các khóa học video giúp bạn học MySQL

  • Chương trình đào tạo MySQL cuối cùng. Đi từ người mới bắt đầu SQL đến chuyên gia
  • SQL – MySQL để phân tích dữ liệu và kinh doanh thông minh
  • SQL cho người mới bắt đầu. Tìm hiểu SQL bằng cách sử dụng MySQL và Thiết kế cơ sở dữ liệu
  • Học thiết kế cơ sở dữ liệu với MySQL
  • Khóa học dành cho nhà phát triển MySQL hoàn chỉnh
  • Quản trị cơ sở dữ liệu MySQL. Thiết kế cơ sở dữ liệu SQL mới bắt đầu
  • MySQL, SQL và các thủ tục được lưu trữ từ cơ bản đến nâng cao

bài viết tương tự

Cách đặt lại mật khẩu root MySQL

Cách đặt lại mật khẩu người dùng chính RDS trên AWS

Cách đặt lại mật khẩu quản trị viên WordPress đã quên

Cách đặt lại mật khẩu root trong RHEL / CentOS 8

Cách đặt lại mật khẩu quản trị viên FreeIPA với tư cách người dùng root

BẠN CÓ THỂ HỖ TRỢ CÔNG VIỆC CỦA CHÚNG TÔI BẰNG LY CÀ PHÊ


Khi chúng tôi tiếp tục phát triển, chúng tôi mong muốn tiếp cận và tác động đến nhiều người hơn, những người truy cập và tận dụng các hướng dẫn chúng tôi có trên blog của mình. Đây là một nhiệm vụ lớn đối với chúng tôi và cho đến nay chúng tôi vô cùng biết ơn những người tốt bụng đã thể hiện sự hỗ trợ tuyệt vời cho công việc của chúng tôi trong suốt thời gian chúng tôi trực tuyến

Cảm ơn sự hỗ trợ của bạn khi chúng tôi làm việc để cung cấp cho bạn những hướng dẫn và bài viết tốt nhất. Nhấp vào bên dưới để mua cà phê cho chúng tôi

Tôi quyết định thực hiện dự án nhỏ này vì tôi đã quá mệt mỏi với việc cập nhật hai bộ cơ sở dữ liệu giống hệt nhau trên một hệ thống khởi động kép. Tôi yêu phần Linux của mình và dành phần lớn thời gian cho nó nhưng đồng thời tôi vẫn cần windows vì RƯỢU sẽ không làm được mọi thứ

Sau khi tìm kiếm rất ngắn gọn rằng dữ liệu MySQL được viết ở cùng một định dạng trên hai hệ điều hành, tôi đã thực hiện cuộc phiêu lưu này. Trên windows, tôi đã tạo một phân vùng NTFS nhỏ để CHỈ chứa dữ liệu cơ sở dữ liệu. Về phía Linux, tôi đã tạo một điểm gắn kết và đặt dữ liệu cơ sở dữ liệu vào phân vùng đó

Bây giờ phía Linux hoạt động tốt. Tôi đã thay đổi vị trí dữ liệu trong. cnf và tôi có thể truy cập dữ liệu đó tốt

Windows không chơi tốt. Khi tôi cố gắng truy cập bảng điều khiển mysql ( mysql -u root -p ), tôi gặp lỗi sau.

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
6

Tôi đã xem nhật ký lỗi và thấy điều này.

$ sudo systemctl stop mysql
# OR
$ sudo /etc/init.d/mysql stop
7

Không có 'auth_socket. Vì thế. dll' có ý nghĩa

Sau khi đào một số đã thấy một số hy vọng bằng cách đặt dòng này vào my. ini trên cửa sổ (skip-grant-tables ). Có thể hiểu không phải là một điều rất an toàn để làm. Điều này đã cho phép tôi truy cập vào bảng điều khiển mysql. Tôi đã chạy một truy vấn cập nhật mật khẩu gốc thành những gì tôi sử dụng. Sau đó, tôi xóa các bảng bỏ qua cấp khỏi tài khoản của tôi. ini và lỗi 1524 này lại xuất hiện. Ghi chú. vâng, tôi đang dừng và bắt đầu dịch vụ với mọi thay đổi của tệp ini

Không thực sự chắc chắn phải làm gì vào thời điểm này. Bất kỳ sự giúp đỡ nào tôi rất cảm kích. dave

Bình luận

Nội dung được sao chép trên trang web này là tài sản của chủ sở hữu tương ứng và nội dung này không được MariaDB xem xét trước. Quan điểm, thông tin và ý kiến ​​được thể hiện bởi nội dung này không nhất thiết đại diện cho quan điểm của MariaDB hoặc bất kỳ bên nào khác