Access denied for user 'root'@'localhost'MySQL 접속 시 다음과 같은 오류 메시지가 출력될 수 있다:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
이 오류는 비밀번호를 입력하지 않아서 발생한 것으로. 아래처럼 -p 옵션을 사용해보자:
$ mysql -u root -p
이 명령어를 실행하면 다음과 같이 비밀번호 입력을 요청하는 메시지가 나온다.
Enter password:
비밀번호를 입력하면 정상적으로 MySQL에 접속할 수 있다.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
이 경우는 root 계정에 비밀번호가 설정되지 않았거나, 입력한 비밀번호가 잘못된 경우로
$ mysql -u root -p 입력 mysql> USE mysql;
mysql> UPDATE user SET password = PASSWORD('1234') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
"1234"로 설정할 수 있다.FLUSH PRIVILEGES를 실행하지 않으면, 변경 사항이 적용되지 않는다.$ mysql -u root -p 로 접속해 "1234"를 입력해 로그인한다.ERROR 2002 (HY000): Can't connect to local MySQL server through socketERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
# Linux
$ sudo service mysql start
# macOS (Homebrew 설치 환경)
$ brew services start mysql