Giới thiệu
Thông thường, bạn truy cập từng cơ sở dữ liệu MySQL bằng cách sử dụng một người dùng cơ sở dữ liệu riêng biệt. Trong một số trường hợp — chẳng hạn như truy cập nhiều cơ sở dữ liệu khác nhau từ dòng lệnh — thì việc có một tài khoản MySQL duy nhất có thể truy cập bất kỳ cơ sở dữ liệu nào sẽ dễ dàng hơn. Tài khoản MySQL đặc quyền này là root của MySQL người dùng.
MySQL root người dùng khác với SSH root của bạn người dùng. Điểm giống nhau duy nhất là ở tên, vì MySQL sử dụng hệ thống xác thực hoàn toàn riêng biệt so với SSH hoặc SFTP. Tuy nhiên, vì lý do bảo mật, bạn chỉ có quyền truy cập vào mật khẩu của người dùng gốc MySQL khi SSH ở dưới dạng root .
Truy cập MySQL Shell với tư cách gốc
Trong khi SSH vào máy chủ của bạn dưới dạng root , bạn có thể mở MySQL shell dưới dạng root của MySQL người dùng với lệnh:
sudo -i mysql
Lý do bạn không cần nhập tên người dùng và mật khẩu cơ sở dữ liệu là vì thông tin đăng nhập của người dùng gốc MySQL được lưu trữ trong tệp:
/root/.my.cnf
Đây là một tệp đặc biệt mà MySQL đọc khi bạn chạy nó từ dòng lệnh. Vì thông tin đăng nhập của người dùng gốc MySQL có trong tệp đó, bạn không cần phải nhớ chúng hoặc tự nhập chúng.
Tìm mật khẩu của người dùng gốc MySQL
Trong một số trường hợp, bạn có thể muốn biết root của MySQL mật khẩu của người dùng. Ví dụ:bạn có thể muốn đăng nhập vào Adminer hoặc phpMyAdmin và có quyền truy cập vào mọi cơ sở dữ liệu cùng một lúc.
Để tìm MySQL root mật khẩu của người dùng, SSH vào máy chủ của bạn và chạy lệnh sau:
sudo cat /root/.my.cnf
Nội dung của tệp đó trông giống như sau:
[client] user = root password = MYSQL_ROOT_PASSWORD_HERE
Nếu bạn thay đổi root của MySQL mật khẩu của người dùng, hãy đảm bảo cập nhật mật khẩu trong tệp đó.