๐Ÿค” SQL ์„ค์น˜ password error

lim1313ยท2021๋…„ 10์›” 8์ผ
0

ERROR ๋ฆฌ๋ทฐ

๋ชฉ๋ก ๋ณด๊ธฐ
6/8

์šฐ๋ถ„ํˆฌ์˜ ๊ฒฝ์šฐ SQL ์„ค์น˜ ์‹œ ๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ •์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค.
๋•Œ๋ฌธ์— ์„ค์น˜ ํ›„ ์ง์ ‘ ์„ค์ •ํ•ด ์ฃผ์–ด์•ผ ํ•˜๋Š”๋ฐ, ๋‚ด๊ฐ€ ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.


๐Ÿ”‘ MySQL ์„ค์น˜

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

๐Ÿ”‘ MySQL ์„œ๋น„์Šค ์‹คํ–‰

sudo systemctl start mysql

์žฌ์‹คํ–‰

sudo systemctl restart mysql.service

๐Ÿ”‘ MySQL ์ ‘์†

mysql -u root

๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ • ํ›„

mysql -u root -p  //-> error ๋ฐœ์ƒ

์šฐ๋ถ„ํˆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ถ€๋ถ„์—์„œ ๊ณ„์† error๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.
๊ทธ๋ž˜์„œ ์šฐ์„  MySQL์— ์ ‘์†ํ•ด ์ฃผ๊ธฐ ์œ„ํ•ด ์•„๋ž˜ ๋ช…๋ น์„ ํ†ตํ•ด ์ ‘์†ํ•œ๋‹ค. ์ด ๋ช…๋ น์œผ๋กœ ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ์—†์ด ์ ‘์†์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

sudo mysql

๐Ÿ”‘ ๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ •

  1. mysql ์ด๋™

USE mysql;
  1. root plugin ํ™•์ธ

SELECT User, Host, plugin FROM mysql.user;

root์˜ plugin์ด caching_sha2_password ์„ค์ •๋˜์–ด์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ๊ฐ’์„ mysql_native_password๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ๋ฉด ์ผ๋ฐ˜์ ์ธ ๋กœ๊ทธ์ธ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

  1. mysql_native_password๋กœ ๋ณ€๊ฒฝ

UPDATE user SET plugin='mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
exit;
  1. sql ์žฌ์‹œ์ž‘

sudo systemctl restart mysql.service
  1. root์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ

    ์„ค์ •ํ•  ๋น„๋ฐ€๋ฒˆํ˜ธ๐Ÿ”‘๋Š” ๊ผญ ๊ธฐ์–ตํ•ด ๋‘์ž
sudo mysql
USE mysql;

UPDATE user SET authentication_string=password('mypassword') WHERE user='root';

FLUSH PRIVILEGES;
exit;

์œ„์˜ ๋ฐฉ๋ฒ•์ด ์•ˆ๋œ๋‹ค๋ฉด

UPDATE ๋Œ€์‹  ALTER์„ ์‚ฌ์šฉํ•ด ๋ณธ๋‹ค.

sudo mysql
USE mysql;

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mypassword';

FLUSH PRIVILEGES;
exit;
  1. ๋งˆ๋ฌด๋ฆฌ
    ์ด์ œ sudo๊ฐ€ ์•„๋‹Œ ์•„๋ž˜์˜ ๋ช…๋ น์—๋„ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
mysql -u root -p

๐Ÿ”‘ Connection failed

MySQL 8.0 ์ด์ƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ connection๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

๋ฒ„์ „ํ™•์ธ
SELECT VERSION()

  1. MySql 8.0์€ SHA-256 hashing์„ ๊ตฌํ˜„ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ์ธ์ฆ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ง€์›ํ•œ๋‹ค.
  • sha256_password - ๊ธฐ๋ณธ์ ์ธ SHA-256 ์ธ์ฆ์„ ๊ตฌํ˜„ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ

  • caching_sha2_password - sha256_password์™€ ๋™์ผํ•œ๋ฐ ์„ฑ๋Šฅ ํ–ฅ์ƒน์„ ์œ„ํ•ด ์„œ๋ฒ„ ์บ์‹ฑ์„ ์ด์šฉํ•œ๋‹ค.

  • MySql 8.0์˜ ๊ธฐ๋ณธ ์ธ์ฆ ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์˜ˆ์ „์˜ mysql_native_password๊ฐ€ ์•„๋‹ˆ๋ผ caching_sha2_password์ด๋‹ค.

  • ๋ฌธ์ œ๋Š” caching_sha2_password๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด

    1. SSL ๋ณด์•ˆ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ• ๊ฑฐ๋‚˜
    2. RSA ๋ณด์•ˆ์„ ์ ์šฉํ•œ ๋น„์•”ํ˜ธ ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.
    3. ์œ„์˜ ๋‘๊ฐ€์ง€ ๊ฒฝ์šฐ caching_sha2_password ๋Š” MySql์˜ ๋ณด์•ˆ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•œ๋‹ค.
  • ์ด ๋ฌธ์ œ๋ฅผ ๊ฐ€์žฅ ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์€mysql_native_password๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ


์ฐธ๊ณ 
https://1mini2.tistory.com/88
https://kogle.tistory.com/87

profile
start coding

0๊ฐœ์˜ ๋Œ“๊ธ€