«   2018/07   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
Archives
Today
121
Total
1,123,290
안정적인 DNS서비스 DNSEver
관리 메뉴

Blue Breeze

Access denied; SUPER privilege(s) for this operation 본문

DB&NoSQL/MySQL\MariaDB

Access denied; SUPER privilege(s) for this operation

푸른바람 C/H 2018.04.23 11:49

gunzip < back.20180423.data.gz | mysql -uusername -p -f datbasename
Enter Password:
ERROR 1227 (42000) at line 279: Access denied; you need (at least one of) the SUPER privilege(s) for this operation

failure cause 원인 파악?

  • working server에서 mysqldump를 이용 원격지 db 백업
  • 원격백업이 가능하기 위해서는 username@% 권한이 필요함.
  • 백업된 log 파일에는 DEFINER=`username`@`%` 형태로 사용자@호스트 정보가 적용됨
  • 이를 원격지 백업 db에 사용할 경우 문제가 없지만, 로컬백업 db에 밀어넣으면 SUPER privilege(s) 에러 발생
  • username@%와 username@localhost host권한이 다름(?)

How to grant super privilege to the user? 에서는 이를 해결하기 위해서 mysql.user.Super_priv 값을 'Y'로 변경하면 해결되지만 권한남용(?)에 대해서 우려를 표현함.

Solutions 또 다른 대응법은

  • 백업 파일에서 DEFINER=`readvista`@`%` >>> DEFINER=`readvista`@`localhost` 변경후 복원한다.
  • -h에서 로컬호스트에 연결된 도메인으로 설정하면  usename@%를 사용한다.
  • db서버에서 mysqldump로 작업후 그 결과물을 백업db 서버에 download받은 후 복원한다.


0 Comments
댓글쓰기 폼