Quyền tối thiểu để người dùng thực hiện mysqldump?


26

Tôi muốn bắt đầu lên lịch cho các crons mysqldump từ xa và tôi muốn sử dụng một tài khoản đặc biệt cho mục đích đó. Tôi muốn cấp cho người dùng đó các quyền tối thiểu để nhận toàn bộ kết xuất, nhưng tôi không chắc chắn cách tốt nhất để thực hiện điều đó.

Nó có đơn giản như

grant SELECT on *.* to '$username'@'backuphost' identified by 'password'; 

hoặc tôi đang thiếu một cách tốt hơn?

Câu trả lời:


24

Tôi tin rằng người dùng chỉ cần quyền chọn trên các bảng để được sao lưu.

Chỉnh sửa: Anh chàng này nói để gán quyền "khóa bảng" quá, điều này có ý nghĩa.


Đây có phải là câu trả lời hợp lệ trong năm 2017?
Kyslik


5

Đối với những người thắc mắc, đây là lệnh chính xác:

GRANT SELECT, LOCK TABLES, SHOW VIEW ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

5

Có vẻ như bạn cũng cần ĐÁNG TIN CẬY. Vì thế:

GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

1

Và bạn cũng cần SỰ KIỆN nếu bạn cũng muốn bỏ SỰ KIỆN.

Và bạn cần TRIGGER nếu bạn cũng muốn đổ TRIGGER. (bất chấp những gì hướng dẫn nói!)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.