«   2018/04   »
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          
Archives
Today
6
Total
1,087,144
관리 메뉴

Blue Breeze

Access denied; you need (at least one of) the SUPER privilege(s) for this operation 본문

DB&NoSQL/MySQL

Access denied; you need (at least one of) the SUPER privilege(s) for this operation

푸른바람 푸른_바람 2018.04.02 13:59

RDS 인스턴스를 생성시 Master Username 을 개별 사용자(root 가 아닌)로 생성하면 백업파일중 SET DEIFNER=`root`부분에서 에러가 발생한다.

gunzip < backup.sql.gz | mysql -uusername -p databasename
ERROR 1227 (42000) at line 271: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
# SUPER 권한이 필요하다.

sed 's/\sDEFINER=`[^`]*`@`[^`]*`//g' -i backup.sql
# DEFINER=.. 문을 제거하거나 CURRENT_USER 문 값을 바꿔라.

# 혹은 동일안 사용자 이더라도 호스트에 따라서 같은 문제가 발생할 수 있다.
#271 /*!50003 CREATE*/ /*!50017 DEFINER=`uasername`@`%`*/ /*!50003 TRIGGER `databasename`.`tablename_changeslog` AFTER UPDATE O        N `tablename` FOR EACH ROW
#271 /*!50003 CREATE*/ /*!50017 DEFINER=`uasername`@`localhost`*/ /*!50003 TRIGGER `databasename`.`tablename_changeslog` AFTER UPDATE O        N `tablename` FOR EACH ROW
# username@% > username@localhost 로 변경해서 문제 해결
# 백업서버에서 원격지 마스터 DB서버의 자료를 백업해서 백업서버의 DB에 이전(mig)시 발생할 수 있다.

# sql 파일을 수정할 수 없거나 수정하기 싫다면 username@% 가 동작할 수 있도록 -h옵션으로 이전한다.
gunzip < backup.sql.gz | mysql -hdev.domain.com -uusername -p databasename

gunzip < backup.sql.gz | mysql -uroot -p databasename
# 전체 권한이 있는 root로 하면 정상동작한다.

# 이래저래 복원시 에러가 걸리다면 -f 옵션(force) 으로 에러가 나는 부분은 무시하고 계속 진행한다.
gunzip < backup.sql.gz | mysql -uusername -p -f databasename


'DB&NoSQL > MySQL' 카테고리의 다른 글

slow-query select in table  (0) 2018.04.21
Access denied; you need (at least one of) the SUPER privilege(s) for this operation  (0) 2018.04.02
Centos7 Mariadb datadir change  (0) 2018.03.07
mysql cmd query  (0) 2017.04.20
centos7 mysql5.7  (0) 2017.02.24
mysqladmin 퍼포먼스 정보 확인  (0) 2017.02.03
0 Comments
댓글쓰기 폼