🩷02_DataBase/01_SQL( Structured Query Language)

#noAccessToProcedureBodies=true #JDBC #MYSQL #5.7 #프로시저실행오류

roomname-dev 2023. 9. 11.

목차

728x90

#noAccessToProcedureBodies=true #JDBC #MYSQL #5.7 #프로시저실행오류

📚 MYSQL 프로시저 실행 오류 메시지

User does not have access to metadata required to determine stored procedure parameter types.
If rights can not be granted, configure connection with "noAccessToProcedureBodies=true" 
to have driver generate parameters that represent INOUT strings irregardless of actual 
parameter types.

📚 에러 원인 

MYSQL 5.7 버전 이후로 프로시저실행을 할때 데이터 베이스에서 테이블, 컬럼명, 컬럼타입, 
프로시저등 메타데이터(metadata)에 대한 권한이 없을때 발생한다.

📚해결방안1

🧨 mysql.proc 테이블에 접근 권한 부여 
🧨 admin1, 127.0.0.1등 개발 환경에 맞게 변경 
🧨GRANT SELECT ON mysql.proc TO 'admin1'@'127.0.0.1';

📚해결방안2

🧨AS-IS)
jdbc:log4jdbc:sqlserver://DB아이피:포트
🧨TO-BE)
jdbc:log4jdbc:sqlserver://DB아이피:포트?noAccessToProcedureBodies=true
728x90

댓글