본문 바로가기
MySql

MySQL database.table에서 username @ '%'에 삭제 권한 부여;

by 베이스 공부 2020. 11. 4.
반응형

사용자에게 데이터베이스의 한 테이블에 대한 모든 권한을 부여했습니다. 아무튼 그들은 기록을 삭제할 수 없습니다.

권한있는 사용자로 시도했습니다.

GRANT DELETE ON databasename.tablename TO username@'%';
flush privileges;

하지만 stil 삭제가 작동하지 않습니다.

ERROR 1142 (42000): DELETE command denied to user 'username'@'localhost' for table 'tablename'

어떤 아이디어?

건배,

네이선.

 

해결 방법

 

GRANT 문에는 사용자 이름에 대한 추가 따옴표가 필요할 수 있습니다 : 'username'@ '%'.

mysql 데이터베이스에서 사용자의 권한을 확인할 수 있습니다. user , db , hosts , tables_priv 테이블을 확인하십시오.

'username'@ 'localhost'및 'username'@ '%'와 같이 동일한 사용자 이름과 다른 호스트 이름을 가진 항목이있을 수 있습니다.

MySQL 문서는 MySQL이 다음 테이블을 평가하는 순서를 설명합니다.


사용자에게 DELETE 를 허용하는 tables_priv 테이블에 항목이있는 경우 일반적으로 충분합니다.

AFAIK는 GRANT 후에 FLUSH PRIVILEGES 를 실행할 필요가 없습니다. INSERT, DELETE를 사용하여 권한 테이블을 수동으로 수정하는 경우에만 FLUSH 를 수행하면됩니다. 기타

 

참조 페이지 https://stackoverflow.com/questions/3891855

 

 

반응형

댓글