어제 질문을 드렸었는데, 약간의 변동이 있어서 다시 올립니다.
프로시저가 aaa, bbb, ccc, ddd, eee, fff, ggg, ......, zzz 가 있었는데, ddd를 수정하다가 정확한 타이밍에 네트워크가 끊어졌습니다.
이후 윈도우용 워크벤치 또는 show procedure status; 에서는 aaa, bbb, ccc 까지만 보이네요.
하지만 show create procedure ggg; 로 내용을 확인해 보면 살아 있습니다. 또한 MySQL이 설치된 리눅스에 workbench를 설치하고 확인해 보면 모든 프로시저 리스트가 나타입니다.
문제는 ddd 프로시저 인데,
drop procedure ddd; 를 해보면 Error 1305 ddd does not exist 라고 나오는데,
create procedure ddd .... 를 해보면 Error 1304 ddd already exists 라고 나오네요..
즉, 삭제를 할때는 "그런 프로시저 없어!" 라고 나오지만, ddd라는 이름으로 프로시저를 생성하면 "이미 있는거야!!" 라고 에러를 뱉어내네요..
show procedure status; 명령의 결과는 aaa, bbb, ccc 만 보입니다.
select * from mysql.proc; 결과에는 aaa, bbb, ... zzz 까지 다 나오지만, ddd 프로시저는 빠져 있습니다.
리눅스 상의 워크밴치에서 프로시저 목록에는 ddd 가 나타나지만, alter, drop 등을 시도해 보면 "ddd does not exist" 라고 나옵니다..
그리고 export로 모든 프로시저를 포함시키면, aaa, bbb, ccc만 뽑힙니다.
현재 가장 큰 문제는 윈도우용 워크밴치에서 aaa, bbb, ccc만 보인다는 것입니다.
ddd 프로시저만 정상적으로 삭제되면 문제가 해결될것 같은 생각이 드는데...
혹시 해결방법이 없을까요?