MySQL là một Hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở [RDMS]. Nó sử dụng bảng, trình kích hoạt, biến, dạng xem, v.v. MariaDB là một nhánh của MySQL. Các cấu trúc và chỉ mục cơ sở dữ liệu của MariaDB giống như MySQL. Blog này bao gồm các bước để đặt lại mật khẩu root MySQL mà không làm mất dữ liệu
Để đặt lại MySQL 5. 7 mật khẩu root trên máy chủ CentOS 7, hãy làm như sau
Dừng máy chủ MySQL
1
systemctl stop mysqld
Đặt môi trường MySQL MYSQLD_OPTS để khởi động MySQL với –skip-grant-tables
1
systemctl đặt - môi trường MYSQLD_OPTS="--skip-grant-tables"
Bắt đầu MySQL với –skip-grant-tables
1
systemctl start mysqld
Đăng nhập với tư cách người dùng root
1
mysql - u root
Cập nhật mật khẩu root MySQL
1
THAY ĐỔI NGƯỜI DÙNG 'root'@'localhost' IDENTIFIED BY 'NEW_MYSQL_PASSWORD_HERE';
Hoặc
1
2
CẬP NHẬT mysql. người dùng SET authentication_string = PASSWORD['NEW_MYSQL_PASSWORD_HERE'] WHERE User = 'root' AND Host = 'localhost';
FLUSH ĐẶC QUYỀN;
Thoát dấu nhắc lệnh MySQL
1
từ bỏ
Dừng máy chủ MySQL
1
systemctl stop mysqld
Bỏ đặt tùy chọn môi trường MySQL
1
systemctl bỏ đặt - môi trường MYSQLD_OPTS
Khởi động MySQL bình thường
1
systemctl start mysqld
Bây giờ bạn sẽ có thể đăng nhập bằng mật khẩu gốc MySQL mới bằng cách sử dụng
1
mysql - u root - p
Xem Đặt lại mật khẩu gốc MySQL, mysqld_safe. lệnh không tìm thấy
Gần đây tôi gặp phải một sự cố khi tôi quên mật khẩu gốc máy chủ mysql của mình. Tôi đã thử một số cách cũ mà tôi đã sử dụng để đặt lại trong centos 6 nhưng không hoạt động. Sau một số nghiên cứu đã tìm ra giải pháp về cách đặt lại mật khẩu mysql trong trường hợp chúng tôi quên nó
Đặt lại mật khẩu người dùng root MySQL trong Centos 7Đăng vào ngày 17/04/201917/12/2019 bởi Fatih Acar
Dừng cơ sở dữ liệu MySQL
systemctl dừng mysqld. dịch vụ
Bắt đầu MySQL ở Chế độ an toàn
mysqld_safe –skip-grant-tables &
Kết nối cơ sở dữ liệu MySQL với người dùng gốc
mysql-uroot
Thay đổi mật khẩu gốc
sử dụng mysql;
cập nhật người dùng đặt mật khẩu=PASSWORD[“newpassword”] trong đó user='root';
xóa đặc quyền;
exit
Khởi động lại cơ sở dữ liệu MySQL
systemctl dừng mysqld. dịch vụ
systemctl bắt đầu mysqld. dịch vụ
Kết nối cơ sở dữ liệu MySQL với người dùng root bằng mật khẩu mới
mysql -u gốc -p
Chia sẻ cái này
Tùy thuộc vào phiên bản máy chủ MySQL hoặc MariaDB mà bạn đang chạy trên hệ thống của mình, bạn sẽ cần sử dụng các lệnh khác nhau để khôi phục mật khẩu gốc
Bạn có thể tìm thấy phiên bản máy chủ của mình bằng cách ban hành lệnh sau
mysql --version
Nếu bạn đã cài đặt MySQL trong hệ thống của mình, đầu ra sẽ giống như thế này
mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
Hoặc xuất như thế này cho MariaDB
mysql Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu [x86_64] using readline 5.2
Đảm bảo ghi lại phiên bản MySQL hoặc MariaDB mà bạn đang chạy
Cách đặt lại mật khẩu gốc của MySQL hoặc MariaDB
Thực hiện theo các bước sau để đặt lại mật khẩu gốc MySQL/MariaDB của bạn
1. Dừng dịch vụ MySQL/MariaDB
Để thay đổi mật khẩu gốc trước tiên, bạn cần dừng máy chủ MySQL. Để làm như vậy gõ lệnh sau
sudo systemctl stop mysql
2. Khởi động máy chủ MySQL/MariaDB mà không tải các bảng cấp
Khởi động máy chủ cơ sở dữ liệu mà không tải các bảng cấp
sudo mysqld_safe --skip-grant-tables &
Dấu và
mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
4 ở cuối lệnh trên sẽ khiến chương trình chạy ẩn, vì vậy bạn có thể tiếp tục sử dụng trình baoKhi tùy chọn
mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
5 được sử dụng, bất kỳ ai cũng có thể kết nối với máy chủ cơ sở dữ liệu mà không cần mật khẩu và với tất cả các đặc quyền được cấp3. Đăng nhập vào vỏ MySQL
Bây giờ bạn có thể kết nối với máy chủ cơ sở dữ liệu với tư cách là người dùng root
mysql -u root
4. Đặt mật khẩu gốc mới
Chạy các lệnh sau nếu bạn chạy MySQL 5. 7. 6 trở lên hoặc MariaDB 10. 1. 20 trở về sau
________số 8Nếu câu lệnh
6 không phù hợp với bạn, hãy thử sửa đổi trực tiếp bảng người dùngmysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
0mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
Chạy các lệnh sau nếu bạn có MySQL 5. 7. 5 trở về trước hoặc MariaDB 10. 1. 20 trở về trước
1mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
Trong cả hai trường hợp nếu mọi việc suôn sẻ, bạn sẽ thấy đầu ra sau
mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
25. Dừng và khởi động máy chủ cơ sở dữ liệu bình thường
Bây giờ mật khẩu gốc đã được đặt, dừng máy chủ cơ sở dữ liệu và khởi động bình thường
mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
0Bạn sẽ được nhắc nhập mật khẩu gốc mới
Khởi động máy chủ cơ sở dữ liệu bình thường
Đối với MySQL, gõ
1mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
Đối với MariaDB, hãy nhập
2mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
6. xác minh mật khẩu
Để xác minh rằng mật khẩu gốc mới đã được áp dụng chính xác, hãy nhập
mysql Ver 14.14 Distrib 5.7.22, for Linux [x86_64] using EditLine wrapper
3Bạn sẽ được nhắc nhập mật khẩu gốc mới. Nhập nó và bạn sẽ đăng nhập vào máy chủ cơ sở dữ liệu của mình
Phần kết luận
Chúng tôi đã chỉ cho bạn cách đặt lại mật khẩu gốc MySQL/MariaDB của bạn. Đảm bảo mật khẩu gốc mới của bạn mạnh và an toàn và giữ mật khẩu ở nơi an toàn
Các hướng dẫn trong hướng dẫn này sẽ hoạt động với mọi bản phân phối Linux hiện đại, chẳng hạn như Ubuntu 18. 04, Debian 10 và CentOS 8