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

Làm cách nào để MySQL có thể viết các tệp outfiles với tư cách là một người dùng khác?

Tệp đầu ra được tạo bởi quy trình mysqld, không phải bởi quy trình khách hàng của bạn. Do đó, tệp đầu ra phải thuộc sở hữu của uid và gid của quy trình mysqld.

Bạn có thể tránh phải sudo để truy cập tệp nếu bạn truy cập nó từ một quy trình dưới uid hoặc gid có thể truy cập tệp. Nói cách khác, nếu mysqld tạo các tệp thuộc sở hữu của uid và gid "mysql" / "mysql", thì hãy thêm tài khoản của riêng bạn vào nhóm "mysql". Sau đó, bạn sẽ có thể truy cập tệp, miễn là chế độ cấp phép của tệp bao gồm quyền truy cập nhóm.

Chỉnh sửa:

Bạn đang xóa một tệp trong / tmp, với chế độ cho phép thư mục là rwxrwxrwt. Bit dính ('t') có nghĩa là bạn chỉ có thể xóa tệp nếu uid của bạn giống với chủ sở hữu của tệp, bất kể quyền đối với tệp hoặc thư mục.

Nếu bạn lưu tệp đầu ra của mình trong một thư mục khác không có bộ bit cố định, bạn sẽ có thể xóa tệp bình thường.

Đọc đoạn trích này từ trang người đàn ông cho dính (8):

GIÁM ĐỐC STICKY

Một thư mục có `` bit dính '' được thiết lập sẽ trở thành một thư mục chỉ dành cho phần phụ, hay chính xác hơn là một thư mục trong đó việc xóa tệp bị hạn chế. Một tệp trong thư mục cố định chỉ có thể bị xóa hoặc đổi tên bởi người dùng nếu người dùng có quyền ghi đối với thư mục và người dùng là chủ sở hữu của tệp, chủ sở hữu của thư mục hoặc siêu người dùng. Tính năng này được áp dụng hữu ích cho các thư mục như / tmp phải có thể ghi công khai nhưng sẽ từ chối người dùng cấp phép để tự ý xóa hoặc đổi tên tệp của nhau.



  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ỗi MySQL 1215:Không thể thêm ràng buộc khóa ngoại

  2. Phương pháp hiệu quả nhất để hết hạn hồ sơ sau 10 phút kể từ khi tạo

  3. Tại sao kích thước bàn của tôi lớn hơn gấp 4 lần so với dự kiến? (hàng * byte / hàng)

  4. Chèn chậm Mysql

  5. Truy vấn SQL vào ngày khi loại là VARCHAR