Linux/Ubuntu

[Linux] Ubuntu 20.04 LTS MySQL 설치방법

디스페어 2022. 4. 7.

1. 패키지 매니저 apt-get을 이용해 MySQL 설치

sudo apt-get update
sudo apt-get install mysql-server

 

 

2. MySQL 서비스 시작

sudo systemctl start mysql
  • 터미널에 아무런 반응도 나타나지 않음  이유는 몰?루

 

 

3. MySQL 접속

# mysql 접속
mysql -u root
  • 오류가 발생하거나(ERROR 1698 (28000): Access denied for user 'root@localhost') 존재하지 않는 명령어라는 결과가 나온다면 설치에 문제가 있거나 MySQL이 실행되지 않은 상태

 

# 비밀번호와 함께 mysql에 접속하는 명령어
# -u(계정 접근), -p(비밀번호)
mysql -u root -p
  • MySQL을 처음 설치하면 root의 암호는 비어있으므로 Enter 키를 눌러주면 된다

 

 

ERROR 1698 (28000): Access denied for user 'root'@'localhost' 해결방법

sudo mysql -u root -p
  • Enter Password가 뜬다면 아무것도 입력하지 않은 상태에서 Enter

에러 처치 완료!

  • myspl에서 벗어나고 싶으면 위의 터미널에서 exit 를 입력해주면 됨

 

 

mysql -u root -p 명령어로 실행하는 방법

# 1. sudo 권한으로 mysql 실행
sudo mysql -u root -p

# 세미콜론까지 싹 넣어줘야됨
SELECT User, Host, plugin FROM mysql.user;

# 터미널 출력 화면
+------------------+-----------+-----------------------+
| User             | Host      | plugin                |
+------------------+-----------+-----------------------+
| debian-sys-maint | localhost | caching_sha2_password |
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session    | localhost | caching_sha2_password |
| mysql.sys        | localhost | caching_sha2_password |
| root             | localhost | auth_socket           |
+------------------+-----------+-----------------------+
#root의 plugin이 auth_socket로 설정 되있을텐데 이것을 mysql_native_password로 변경해주면 된다!



# 2. mysql에서 아래 3줄의 명령어를 차례대로 입력
update user set plugin='mysql_native_password' where user='root';
flush privileges;
select user, host, plugin from user;

#터미널 출력 화면
+------------------+-----------+-----------------------+
| user             | host      | plugin                |
+------------------+-----------+-----------------------+
| debian-sys-maint | localhost | caching_sha2_password |
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session    | localhost | caching_sha2_password |
| mysql.sys        | localhost | caching_sha2_password |
| root             | localhost | mysql_native_password |
+------------------+-----------+-----------------------+
#root의 plugin이 mysql_native_password로 교체된다!
#이후 exit로 mysql에서 빠져나온 뒤 mysql -u root -p 를 입력해보면 sudo를 쓰지 않고도 잘 된다!

 

 

4. mysql 패스워드 설정

# 비밀번호 입력칸에 쓰고 싶은 비밀번호를 작성해주고 터미널에 입력
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '비밀번호입력';

 

 

Reference

root 계정 비밀번호 재설정

root 계정 로그인이 안될때

반응형

댓글