Reset & change password MySQL Root trên Linux, Windows

Reset & change password MySQL Root trên Linux, Windows

05/04/2021

Giới thiệu

Change password MySQL là một thao tác cần thiết để bảo mật cơ sở dữ liệu MySQL mà bạn cần phải biết.

MySQL là hệ quản trị cơ sở dữ liệu được vận hành theo mô hình phần mềm mã nguồn mở. Nó là gói phần mềm rất phổ biến cho phần mềm ứng dụng web. Giống như nhiều dịch vụ web khác, MySQL có password cấp quản trị viên hoặc root password. Root password cho phép người dùng thực hiện tất cả các chức năng cấp cao nhất trong cơ sở dữ liệu.

Nếu bạn chưa bao giờ đặt root password trên cơ sở dữ liệu MySQL của mình, bạn sẽ có thể kết nối với nó. Tuy nhiên, bất kỳ ai cũng có thể truy cập vào cơ sở dữ liệu của bạn. Vì vậy, change password MySQL là việc cần thiết.

Trong trường hợp cơ sở dữ liệu của bạn đã có root password, nhưng chẳng may mất nó. Hướng dẫn này sẽ giúp bạn reset và change password MySQL trên Linux và Windows.

Điều kiện tiên quyết để reset và change password MySQL

  • Đang có một cơ sở dữ liệu MySQL
  • Có quyền truy cập vào Linux hoặc Windows Server chạy MySQL
  • Đặc quyền của quản trị viên trên máy tính host cơ sở dữ liệu MySQL
  • Một trình soạn thảo văn bản. Notepad được bao gồm theo mặc định trong Window. Ngoài ra, vim cũng được cài đặt theo mặc định trong Linux.
  • Truy cập vào giao diện command-line (hoặc terminal)

Cách change password MySQL trong Linux

Bước 1: Đăng nhập với tư cách MySQL User

Khi bạn khởi động vào cài đặt Linux, hãy đăng nhập với tư cách là user thường chạy MySQL.

Mặc dù bạn có thể đăng nhập bằng root, nhưng khi bạn khởi động MySQL server, hãy khởi động nó bằng --user = mysqloption.

Nếu không, hệ thống có thể tạo các file do root user sở hữu. Tuy nhiên, điều này có thể gây ra sự cố.

Bước 2: Tìm file .pid cho Dịch vụ MySQL

Vị trí phụ thuộc vào bản phân phối của Linux, cũng như một số biến số khác.

Nhiều hệ thống lưu trữ chúng trong /var/lib/mysql/, /var/run/mysqld/, hoặc /usr/local/mysql/data/. Filename thường bắt đầu bằng mysqld (hoặc hostname của hệ thống) và sử dụng phần mở rộng .pid.

Bước 3: Dừng process MySQLD

Để kết thúc process, mở cmd và chạy:

kill `cat /mysql-data-directory/host_name.pid`

Sử dụng filename bạn đã tìm thấy ở bước trước thay vì mysql-data-directory/host_name.pid.

Ngoài ra, hãy đảm bảo chỉ định toàn bộ đường dẫn đến file. Hãy sử dụng phím back-tick (thường ở trên phím tab) thay vì một dấu ngoặc kép.

Bước 4: Tạo password file

1. Mở trình soạn thảo văn bản bằng command (Ví dụ như Vim):

sudo vim

2. Tiếp theo, thêm dòng:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';

Nhớ bao gồm các dấu ngoặc kép và dấu chấm phẩy. Chuyển NewPassword thành password bạn muốn sử dụng. Hãy đảm bảo sử dụng password an toàn và đủ mạnh.

Command này sẽ hoạt động đối với máy bạn hiện đang làm việc. Nếu bạn đang kết nối với một hệ thống khác, hãy thay thế localhost bằng hostname chính xác.

3. Lưu file vào home/me/ mysql-init.

Thay thế tài khoản người dùng của bạn cho /home/me và lưu file vào tài khoản người dùng được bảo vệ bằng password.

Bước 5: Khởi động lại MySQL Server và áp dụng password mới

Trong cửa sổ terminal, nhập:

mysqld --init-file=/home/me/mysql-init &

Thao tác này sẽ khởi chạy MySQL và áp dụng thay đổi text-file password. Tùy thuộc vào cách bạn khởi động server, bạn có thể thêm các tùy chọn khác (chẳng hạn như –defaults-file.)

Bước 6: Cleaning Up

Cuối cùng, đăng nhập vào MySQL server bằng tài khoản root và xác minh password mới hoạt động. Sau đó, xóa file được tạo ở Bước 4.

Cách reset password MySQL trong Windows

Bước 1: Dừng MySQL server

1. Kiểm tra xem bạn đã đăng nhập với tư cách quản trị viên chưa.

2. Nhấn Win + R (giữ phím Windows / Super và nhấn “r”.) Khi hộp “Run” xuất hiện, nhập:

services.msc

3. Bấm OK.

4. Cuộn xuống danh sách các dịch vụ để tìm dịch vụ MySQL. Bấm chuột phải vào entry, sau đó bấm chuột trái vào Stop.

Bước 2: Khởi chạy trình soạn thảo văn bản

Nhấp vào menu và tìm kiếm Notepad.

Hoặc sử dụng đường dẫn: menu> Windows Accessories> Notepad.

Bước 3: Tạo file văn bản mới bằng password command

1. Nhập dòng sau vào trình soạn thảo văn bản:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';

Nhớ giữ nguyên dấu ngoặc kép và dấu chấm phẩy. Thay thế NewPassword bằng password bạn chọn.

2. Sử dụng menu File> Save As để lưu file vào thư mục gốc của ổ cứng (C: \). Chọn filename phù hợp, chẳng hạn như mysql-init.txt.

Do đó, localhost command sẽ thay đổi password trên hệ thống cục bộ của bạn. Nếu bạn đang cố gắng thay đổi password trên hệ thống qua mạng, thay thế hostname cho localhost.

Bước 4: Mở Command Prompt

1. Nhấn Ctrl + Shift + Esc.

2. Sau đó, nhấp vào menu File> Run new task.

3. Nhập cmd.exe và chọn hộp để chạy với tư cách quản trị viên.

4. Nhấp vào OK.

Bước 5: Khởi động lại MySQL Server bằng Config file mới của bạn

1. Điều hướng đến thư mục MySQL bằng command prompt:

cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"

Theo đó, dòng command sẽ hiển thị rằng bạn đang làm việc trong thư mục này.

2. Nhập thông tin sau:

mysqld --init-file=C:\\mysql-init.txt

Lưu ý có hai dấu gạch chéo sau C: prompt. 

Ngoài ra, nếu bạn chọn một tên khác trong Bước 2, sử dụng tên đó sau dấu gạch chéo kép.

Bước 6: Clean up

Bây giờ, bạn có thể đăng nhập vào MySQL server bằng password mới.

Kiểm tra kỹ để đảm bảo nó hoạt động. Nếu bạn có các tùy chọn cấu hình đặc biệt (chẳng hạn như khởi chạy MySQL với tùy chọn –defaults-file), bạn có thể tiếp tục tùy chỉnh theo ý của mình.

Sau khi MySQL khởi chạy và bạn đã xác nhận việc thay đổi password, hãy xóa file C:\myswl-init.txt.

Kết luận

Sau khi đọc hướng dẫn này, bạn có thể reset root password trên MySQL trong Linux và Windows. Đây là một cách an toàn để thay đổi password nhạy cảm.

Theo phoenixNAP.

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments