Dump떠온 data에서 mysql error 1449: the user specified as a definer does not exist 가 날 때

Jay·2023년 9월 8일

work

목록 보기
12/16
post-thumbnail

로컬에서 보려고 실서버의 데이터를 덤프떠와서 연결했더니 이상하게 다른 데이터는 다 뜨는데 특정 부분만 안 떴다.
그때 난 에러가 the user specified as a definer ('root'@'%') does not exist.
구글에 검색해보니 덤프 떠오기 전의 데이터의 definer가 현재 로컬에는 없어서 그런 거 같았는데..
이상하게 이것저것 찾아본 대로 select * from mysql.proc where definer = '기존계정@%' and type='function'으로 함수를 확인한 다음 update로 함수 정의자를 수정했는데도 여전히 안되더라..

알고보니까 기존 데이터에 view가 있었고 이 view의 definer가 기존계정으로 돼있던 거였다!
난 바보같이 view를 걍 삭제했다가 또 안돼서.. 덤프뜬거 다시 restore한다음 새로 view를 만들었다. 다른 프로그램은 어떤지 모르겠는데, Dbeaver에서는 그냥 새롭게 view만드는게 낫다는 포스팅도 본 거 같아서..

어쨌든 결론적으론 이제 잘된다.
덤프떠올때도 고려할 점이 많구나.

참고1
참고2
참고3
참고4
참고5

profile
ㄱ이 아닌 개발자가 되고 싶은 사람

0개의 댓글