2010-10-05 64 views
15

Làm thế nào tôi có thể tạo một bảng trong mysql chỉ đọc cho người dùng trong khi vẫn có quyền ghi vào các bảng khác trong cùng một db?Tạo một bảng đơn trong mysql chỉ đọc

thông tin bổ sung

  • tôi có quyền root để máy chủ
  • Bàn là MyISAM
  • phiên bản Server là 5.0.51a-24 + lenny2

cảm ơn!

Trả lời

6

Thu hồi tất cả các đặc quyền trước và sau đó cấp các đặc quyền mới cụ thể:

REVOKE ALL ON db.table FROM user; 
REVOKE ALL ON db.othertable FROM user; 
GRANT SELECT ON db.table TO user; 
GRANT SELECT, INSERT, UPDATE, DELETE ON db.othertable TO user; 
+3

Nếu thành viên này đã có "TẤT CẢ ƯU ĐÃI" trên bảng này tôi nên thu hồi những và gán đặc quyền bảng cá nhân trên mỗi bảng hoặc tôi có thể ghi đè lên các đặc quyền trên bảng duy nhất với chỉ SELECT? – ChrisR

+1

@chris câu hỏi hợp lệ. Tuy nhiên, chỉ đơn giản là cố gắng này mình nên là một vấn đề của giây;) – sfussenegger

+3

Đúng nhưng tôi không thực sự mong muốn thử điều này trên cơ sở dữ liệu trực tiếp và thiết lập một cơ sở dữ liệu thử nghiệm với cùng một dữ liệu không phải là một vài giây :) Tôi sẽ kiểm tra nó tho, cho phép xem nhanh như thế nào tôi có thể có được một gương địa phương của db sống :) – ChrisR

Các vấn đề liên quan