EC2 Ubuntu에 MySQL 설치 후 접속 시 에러 해결
MySQL 설치 후 mysql -u root -p로 접속할 때 Access denied for user 'root'@'localhost' 에러가 발생한다.
sudo mysql -u root
-> sudo를 사용하여 root 계정으로 MySQL에 접속한다.
mysql> USE mysql;
mysql> SELECT User, Host, plugin FROM mysql.user;
-> User, Host, plugin을 확인하면 root | localhost가 auth_socket으로 되어 있는데, 이것을 mysql_native_password로 바꿔 줘야 한다.
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> SELECT User, Host, plugin FROM mysql.user;
-> 위 코드를 입력하여 mysql_native_password로 변경한다.
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '변경할-비밀번호';
mysql> FLUSH PRIVILEGES;
-> root@localhost의 비밀번호를 바꿔 주고, 나가서 다시 실행하면 된다.