[MySQL] ERROR 1457 (HY000): Failed to load routine after upgrade or migratrion
에러메세지
ERROR 1457 (HY000): Failed to load routine DB_NAME.MY_PROCEDURE_01. The table mysql.proc is missing, corrupt, or contains bad data (internal code -6)
상황
mysql 업그레이드 및 마이그레이션 작업 이후
데이터상태
proc 테이블에는 MY_PROCEDURE_01 이 제대로 들어가 있음
use mysql; select * from proc where name='MY_PROCEDURE_01';
의 결과는 제대로 나옴…
호출시
call DB_NAME.MY_PROCEDURE_01;
show create procedure DB_NAME.MY_PROCEDURE_01;
등을 수행하게 되면..
위의 에러메세지가 발생한다는것…
원인
- 테이블 손상
- 데이터 마이그레이션 실패
등 여러가지가 있겠으나..
나같은 경우는…
구버전 -> 최신(mysql-5.7) 업데이트를 하다보니..
프로시저 선언시
CREATE TEMPORARY TABLE TMPTTT(REGDATE varchar(10))TYPE = HEAP
이런식으로 현재 버전에서 지원하지 않는 구문오류로 인해 해당 프로시저가 정상적으로 생성되지 않았던 것.
찾느라 무척 애먹음.. ;;;;;
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
» | [MySQL] ERROR 1457 (HY000): Failed to load routine after upgrade or migratrion | 관리자 | 2015.12.08 | 194 |
4 | NL-00303: SYNTAX ERROR IN NV STRING | 위대한유저 | 2015.07.08 | 494 |
3 | ORA-65096: invalid common user or role name on oracle12c | 위대한유저 | 2015.07.08 | 292 |
2 | mysql 데이터베이스 용량 확인하기 | 위대한유저 | 2013.08.22 | 16378 |
1 | 구버전 MySQL(to 4.0) 에서 바이너리 로그 정리하기 | 위대한유저 | 2011.07.02 | 104501 |