B.3.3.2 & nbsp; Cách đặt lại mật khẩu gốc
Nếu bạn chưa bao giờ gán mật khẩu
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 cho MySQL, máy chủ hoàn toàn không yêu cầu mật khẩu để kết nối là C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2. Tuy nhiên, điều này là không an toàn. Để biết hướng dẫn về việc gán mật khẩu, xem Phần & NBSP; 2.10.4, Bảo mật tài khoản MySQL ban đầu.Nếu bạn biết mật khẩu
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 và muốn thay đổi nó, hãy xem Phần & NBSP; 13.7.1.1, Tuyên bố người dùng thay đổi, và Phần & NBSP; 13.7.1.7Nếu bạn đã chỉ định mật khẩu
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 trước đây nhưng đã quên nó, bạn có thể gán một mật khẩu mới. Các phần sau đây cung cấp các hướng dẫn cho các hệ thống Windows và UNIX và UNIX, cũng như các hướng dẫn chung áp dụng cho bất kỳ hệ thống nào.B.3.3.2.1 & nbsp; Đặt lại mật khẩu gốc: Hệ thống WindowsTrên Windows, sử dụng quy trình sau để đặt lại mật khẩu cho tài khoản MySQL
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
6. Để thay đổi mật khẩu cho tài khoản C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 bằng phần tên máy chủ khác, hãy sửa đổi các hướng dẫn để sử dụng tên máy chủ đó.Đăng nhập vào hệ thống của bạn với tư cách là quản trị viên.
Dừng máy chủ MySQL nếu nó đang chạy. Đối với một máy chủ đang chạy như một dịch vụ Windows, hãy truy cập Trình quản lý dịch vụ: Từ menu, chọn, sau đó,. Tìm dịch vụ MySQL trong danh sách và dừng nó.
Nếu máy chủ của bạn không chạy như một dịch vụ, bạn có thể cần sử dụng trình quản lý tác vụ để buộc nó dừng lại.
Tạo một tệp văn bản chứa câu lệnh Ghi nhận mật khẩu trên một dòng. Thay thế mật khẩu bằng mật khẩu mà bạn muốn sử dụng.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Lưu các tập tin. Ví dụ này giả định rằng bạn đặt tên cho tệp
8.C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Mở cửa sổ Bảng điều khiển để đến dấu nhắc lệnh: Từ menu, chọn, sau đó nhập CMD làm lệnh sẽ được chạy.cmd as the command to be run.
Bắt đầu máy chủ MySQL với biến hệ thống
9 được đặt để đặt tên cho tệp [lưu ý rằng dấu gạch chéo ngược trong giá trị tùy chọn được nhân đôi]:C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Nếu bạn đã cài đặt MySQL đến một vị trí khác, hãy điều chỉnh lệnh CD cho phù hợp.cd command accordingly.
Máy chủ thực thi nội dung của tệp được đặt tên bởi biến hệ thống
9 khi khởi động, thay đổi mật khẩu tài khoảnC:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
6.C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Để có đầu ra máy chủ xuất hiện trong cửa sổ Bảng điều khiển thay vì trong tệp nhật ký, hãy thêm tùy chọn
2 vào lệnh MySQLD.mysqld command.C:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
Nếu bạn đã cài đặt MySQL bằng Trình hướng dẫn cài đặt MySQL, bạn có thể cần chỉ định tùy chọn
3. Ví dụ:C:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
C:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
Cài đặt
3 thích hợp có thể được tìm thấy bằng cách sử dụng Trình quản lý dịch vụ: từ menu, sau đó, chọn, sau đó. Tìm dịch vụ MySQL trong danh sách, nhấp chuột phải vào và chọn tùy chọnC:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
5. TrườngC:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
6 chứa cài đặtC:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
3.C:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
Sau khi máy chủ bắt đầu thành công, xóa
8.C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Bây giờ bạn sẽ có thể kết nối với máy chủ MySQL dưới dạng
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 bằng cách sử dụng mật khẩu mới. Dừng máy chủ MySQL và khởi động lại bình thường. Nếu bạn chạy máy chủ dưới dạng dịch vụ, hãy khởi động từ cửa sổ Windows Services. Nếu bạn khởi động máy chủ theo cách thủ công, hãy sử dụng bất kỳ lệnh nào bạn thường sử dụng.Nếu câu lệnh
UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
0 không đặt lại mật khẩu, hãy thử lặp lại quy trình bằng cách sử dụng các câu lệnh sau để sửa đổi bảng UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
1 trực tiếp:UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
B.3.3.2.2 & nbsp; Đặt lại mật khẩu gốc: Hệ thống UNIX và UNIX giống nhưTrên Unix, sử dụng quy trình sau để đặt lại mật khẩu cho tài khoản MySQL
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
6. Để thay đổi mật khẩu cho tài khoản C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 bằng phần tên máy chủ khác, hãy sửa đổi các hướng dẫn để sử dụng tên máy chủ đó.Các hướng dẫn giả định rằng bạn khởi động máy chủ MySQL từ tài khoản đăng nhập UNIX mà bạn thường sử dụng để chạy nó. Ví dụ: nếu bạn chạy máy chủ bằng tài khoản đăng nhập
UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
4, bạn nên đăng nhập dưới dạng UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
4 trước khi sử dụng các hướng dẫn. Ngoài ra, bạn có thể đăng nhập dưới dạng C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2, nhưng trong trường hợp này, bạn phải bắt đầu MySQLD với tùy chọn UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
7. Nếu bạn khởi động máy chủ dưới dạng C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 mà không cần sử dụng UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
7, máy chủ có thể tạo các tệp thuộc sở hữu ____ 12 trong thư mục dữ liệu, chẳng hạn như tệp nhật ký và chúng có thể gây ra sự cố liên quan đến quyền cho các khởi động máy chủ trong tương lai. Nếu điều đó xảy ra, bạn phải thay đổi quyền sở hữu của các tệp thành UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
4 hoặc xóa chúng.must start mysqld with the UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
7 option. If you start the server as C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 without using UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
7, the
server may create C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2-owned files in the data directory, such as log files, and these may cause permission-related problems for future server startups. If that happens, you must either change the ownership of the files to UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
4 or remove them. Đăng nhập vào hệ thống của bạn với tư cách là người dùng Unix mà máy chủ MySQL chạy như [ví dụ:
4].UPDATE mysql.user SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
Dừng máy chủ MySQL nếu nó đang chạy. Xác định vị trí tệp
3 chứa ID quy trình của máy chủ. Vị trí chính xác và tên của tệp này phụ thuộc vào phân phối, tên máy chủ và cấu hình của bạn. Các vị trí phổ biến là$> kill `cat /mysql-data-directory/host_name.pid`
4,$> kill `cat /mysql-data-directory/host_name.pid`
5 và$> kill `cat /mysql-data-directory/host_name.pid`
6. Nói chung, tên tệp có phần mở rộng$> kill `cat /mysql-data-directory/host_name.pid`
3 và bắt đầu bằng$> kill `cat /mysql-data-directory/host_name.pid`
8 hoặc tên máy chủ của hệ thống của bạn.$> kill `cat /mysql-data-directory/host_name.pid`
Dừng máy chủ MySQL bằng cách gửi
9 bình thường [không phải$> kill `cat /mysql-data-directory/host_name.pid`
0] đến quy trình MySQLD. Sử dụng tên đường dẫn thực tế của tệpALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
3 trong lệnh sau:mysqld process. Use the actual path name of the$> kill `cat /mysql-data-directory/host_name.pid`
3 file in the following command:$> kill `cat /mysql-data-directory/host_name.pid`
$> kill `cat /mysql-data-directory/host_name.pid`
Sử dụng Backticks [không phải dấu ngoặc kép] với lệnh
2. Những điều này khiến đầu ra củaALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
2 được thay thế vào lệnhALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
9.$> kill `cat /mysql-data-directory/host_name.pid`
Tạo một tệp văn bản chứa câu lệnh Ghi nhận mật khẩu trên một dòng. Thay thế mật khẩu bằng mật khẩu mà bạn muốn sử dụng.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Lưu các tập tin. Ví dụ này giả định rằng bạn đặt tên cho tệp
5. Tệp chứa mật khẩu, vì vậy không lưu nó ở nơi có thể đọc bởi những người dùng khác. Nếu bạn không đăng nhập dưới dạngALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
4 [người dùng mà máy chủ chạy như], hãy đảm bảo rằng tệp có quyền cho phépUPDATE mysql.user SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
4 đọc nó.UPDATE mysql.user SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
Bắt đầu máy chủ MySQL với biến hệ thống
9 được đặt để đặt tên cho tệp:C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
$> mysqld --init-file=/home/me/mysql-init &
Máy chủ thực thi nội dung của tệp được đặt tên bởi biến hệ thống
9 khi khởi động, thay đổi mật khẩu tài khoảnC:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
6.C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Các tùy chọn khác cũng có thể cần thiết, tùy thuộc vào cách bạn thường khởi động máy chủ của mình. Ví dụ:
3 có thể cần thiết trước đối sốC:\> mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt
9.C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Sau khi máy chủ bắt đầu thành công, xóa
5.ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Bây giờ bạn sẽ có thể kết nối với máy chủ MySQL dưới dạng
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 bằng cách sử dụng mật khẩu mới. Dừng máy chủ và khởi động lại bình thường.Nếu câu lệnh
UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
0 không đặt lại mật khẩu, hãy thử lặp lại quy trình bằng cách sử dụng các câu lệnh sau để sửa đổi bảng UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
1 trực tiếp:UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
B.3.3.2.3 & nbsp; Đặt lại mật khẩu gốc: Hướng dẫn chung
Các phần trước cung cấp các hướng dẫn khởi động mật khẩu dành riêng cho các hệ thống Windows và UNIX và UNIX. Ngoài ra, trên bất kỳ nền tảng nào, bạn có thể đặt lại mật khẩu bằng máy khách MySQL [nhưng cách tiếp cận này kém an toàn]:mysql client [but this approach is less secure]:
Dừng máy chủ MySQL nếu cần thiết, sau đó khởi động lại với tùy chọn
7. Điều này cho phép bất cứ ai kết nối mà không cần mật khẩu và với tất cả các đặc quyền và vô hiệu hóa các câu lệnh quản lý tài khoản như$> mysqld --init-file=/home/me/mysql-init &
0 vàUPDATE mysql.user SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
9. Bởi vì điều này là không an toàn, bạn có thể muốn sử dụng$> mysqld --init-file=/home/me/mysql-init &
7 kết hợp với việc cho phép biến hệ thống$> mysqld --init-file=/home/me/mysql-init &
1 để ngăn các máy khách từ xa kết nối.UPDATE mysql.user SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
Kết nối với máy chủ MySQL bằng máy khách MySQL; Không cần mật khẩu vì máy chủ đã được bắt đầu với
7:mysql client; no password is necessary because the server was started with$> mysqld --init-file=/home/me/mysql-init &
7:$> mysqld --init-file=/home/me/mysql-init &
$> mysql
Trong máy khách
4, hãy nói với máy chủ tải lại các bảng cấp để các báo cáo quản lý tài khoản hoạt động:UPDATE mysql.user SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
mysql> FLUSH PRIVILEGES;
Sau đó thay đổi mật khẩu tài khoản
6. Thay thế mật khẩu bằng mật khẩu mà bạn muốn sử dụng. Để thay đổi mật khẩu cho tài khoảnC:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
2 bằng phần tên máy chủ khác, hãy sửa đổi các hướng dẫn để sử dụng tên máy chủ đó.C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
0C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin" C:\> mysqld --init-file=C:\\mysql-init.txt
Bây giờ bạn sẽ có thể kết nối với máy chủ MySQL dưới dạng
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
2 bằng cách sử dụng mật khẩu mới. Dừng máy chủ và khởi động lại bình thường [không có tùy chọn $> mysqld --init-file=/home/me/mysql-init &
7 và không bật biến hệ thống UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
1].Nếu câu lệnh
UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
0 không đặt lại mật khẩu, hãy thử lặp lại quy trình bằng cách sử dụng các câu lệnh sau để sửa đổi bảng UPDATE mysql.user
SET authentication_string = PASSWORD['MyNewPass'], password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
1 trực tiếp:C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql-init.txt
1