본문 바로가기
MariaDB

[MariaDB] Localhost DB Connection 실패 원인

by Lee David 2022. 8. 3.
반응형
MariaDB 10.4 이후 버전 이슈

% 스코프로 유저를 사용하여 DB Connection을 하려고 하면 아래와 같은 이슈가 많이 발생합니다.

Access denied for user '유저'@'localhost' (using password: YES)

오늘도 이것 때문에 한시간은 잡아 먹었던것 같습니다.

내부에서 공유 받은 user 정보로 설정값을 잡고 서버를 올린 후

해당 내용 때문에 user 테이블을 확인하고 Grant_priv 값이 N으로 적용된 걸 확인했습니다.

Grant_priv가 N으로 된 경우 localhost로 접근이 되지 않습니다.

그래서 mysql.user 테이블에서 Grant_priv를 수정하려고 하니 바로 오류 메시지가 뜨네요!

COLUMN 'Grant_priv' IS NOT updatable

다시 구글로 돌아와서 이것저것 뒤져보다가 MariaDB 업데이트로 인해

mysql.user 테이블 -> 뷰 형태로 변경되어 10.4 버전부터는 직접 mysql.user 테이블을 수정 할 수 없다고 합니다.

외부 접근 혹은 사설 ip 만 사용이 가능합니다.

 

혹시라도 localhost로 접근 가능한 유저를 생성해야 한다면 %가 아닌 localhost 옵션으로 생성해야 합니다.

 

외부 혹은 사설 ip 접근 유저 생성 스크립트
create user '유저'@'%' identified by '비밀번호';

localhost 접근 유저 생성 스크립트
create user '유저'@'locahost' identified by '비밀번호';
반응형