phpMyAdmin root 접속 불가 해결 방법

서버 일반

#1698 – Access denied for user ‘root’@’localhost’

mysqli_real_connect(): (HY000/1698) : Access denied for user ‘root’@’localhost’

MySQL 또는 MariaDB를 설치한 다음 데이터베이스 관리를 하기 위해 phpMyAdmin을 설치 후 웹에서 접속을 하려고 하면 위와 같은 메시지와 함께 로그인 불가 상태가 되는데요.

MySQL 5.7, MariaDB 10.1 이후 버전은 보안상 root 계정은 터미널에서만 접속할 수 있으며 root를 제외한 사용자 계정으로 phpMyAdmin에 접속할 수 있기 때문에 MySQL에서 새로 사용자를 만들고, 권한을 부여해서 root 계정처럼 사용할 수 있습니다.

Phpmyadmin Denied Root 01

MySQL 사용자 계정 생성

Phpmyadmin Denied Root 02

터미널에 접속한 다음 ①sudo su 명령어로 슈퍼유저 권한을 획득합니다.

그리고 ②mysql -u root -p를 입력해 root 계정으로 로그인 한 후 다음 명령어를 입력해 새로운 MySQL 계정을 만들고 모든 권한을 부여해 root와 같은 계정을 만들어 줍니다.

create user '아이디'@'%' identified by '비밀번호';
grant all privileges on *.* to '아이디'@'%';
Phpmyadmin Denied Root 03

이제 웹 브라우저에서 phpMyAdmin로 이동한 다음 생성한 아이디와 비밀번호를 입력해 로그인할 수 있으며 root 보다는 한단계 낮은 권한으로 사용할 수 있는 것을 확인할 수 있습니다.

UPDATE mysql.user SET Grant_priv='Y', Super_Priv='Y' WHERE user='아이디';
FLUSH PRIVILEGES;

보안을 포기하고 root와 동등한 권한을 사용하고 싶다면 터미널에서 위 명령어를 추가로 입력하면 되겠습니다.

1 댓글. Leave new

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Fill out this field
Fill out this field
유효한 이메일 주소를 입력해주세요.

How To Use Ps4 Vr Support Universal Media Server Title
PS4 VR 지원 유니버설 미디어 서버 사용법
플레이스테이션4(이하 PS4)의 악세서리 장치인 PSVR을 소유하고 있는 게이머라면 PS4 VR을 이용한 우동 영상을 한번 쯤은 시도를 해봤을텐데요. PS4에 내장된 미디어…
Letsencrypt Acmev2 Title
Let’s Encrypt ACMEv2 업그레이드 방법
웹서버에 SSL을 적용하기 위해 Let’s Encrypt 인증서를 발급받을 때 letsencrypt 또는 certbot 클라이언트를 설치해 사용하는데요. 최근에 Let’s Encrypt 인증 프로토콜…