Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách xuất &nhập người dùng hiện tại (với các đặc quyền của nó!)

Một trong những cách dễ nhất mà tôi đã tìm thấy để xuất người dùng là sử dụng công cụ pt-show-grants của Percona. Bộ công cụ Percona miễn phí, dễ cài đặt và dễ sử dụng, với nhiều tài liệu, đây là một cách dễ dàng để hiển thị cho tất cả người dùng hoặc những người dùng cụ thể. Nó liệt kê tất cả các khoản tài trợ và kết quả đầu ra của họ ở định dạng SQL. Tôi sẽ đưa ra một ví dụ về cách tôi sẽ hiển thị tất cả các khoản tài trợ cho test_user:

shell> pt-show-grants --only test_user

Ví dụ đầu ra của lệnh đó:

GRANT USAGE ON *.* TO 'test_user'@'%' IDENTIFIED BY PASSWORD '*06406C868B12689643D7E55E8EB2FE82B4A6F5F4';
GRANT ALTER, INSERT, LOCK TABLES, SELECT, UPDATE ON `test`.* TO 'test_user'@'%';

Tôi thường giới hạn lại kết quả đầu ra thành một tệp để tôi có thể chỉnh sửa những gì tôi cần hoặc tải nó vào mysql.

Ngoài ra, nếu bạn không muốn sử dụng công cụ Percona và muốn thực hiện kết xuất tất cả người dùng, bạn có thể sử dụng mysqldump theo cách này:

shell> mysqldump mysql --tables user db > users.sql

Lưu ý:Đặc quyền --flush sẽ không hoạt động với điều này, vì toàn bộ db sẽ không bị kết xuất. điều này có nghĩa là bạn cần chạy nó theo cách thủ công.

shell> mysql -e "FLUSH PRIVILEGES"


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào tôi có thể kết xuất cơ sở dữ liệu MySQL mà không sử dụng mysqldump trong Python

  2. chèn tốc độ trong mysql vs cassandra

  3. truy vấn cập nhật mysql với truy vấn phụ

  4. php imap - lấy nội dung và tạo văn bản thuần túy

  5. Cách khắc phục MySql:kích thước cột chỉ mục quá lớn (Di chuyển Laravel)