fee-fi-fo-fum
article thumbnail

apt-get ์ด๋ผ๋Š” ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ์ด์šฉํ•ด ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. (์šฐ๋ถ„ํˆฌ ๋ฆฌ๋ˆ…์Šค๋ฅผ ์„ค์น˜ํ–ˆ๋‹ค๋ฉด ์ด๋ฏธ ์„ค์น˜๋˜์–ด ์žˆ๋‹ค.)

1. ์šฐ๋ถ„ํˆฌ ์„œ๋ฒ„ ์—…๋ฐ์ดํŠธ

1
$ sudo apt-get update

2. mysql-server ์„ค์น˜

1
$ sudo apt-get install mysql-server

์„ค์น˜ ์ค‘๊ฐ„ ์ค‘๊ฐ„ Password๋ฅผ ๋ฌผ์–ด๋ณด๋Š”๋ฐ ๋นˆ์นธ์œผ๋กœ ๋‘๊ณ  OK๋ฅผ ๋ˆ„๋ฅด๋ฉด Ubuntu ์„œ๋ฒ„ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ์ž๋™์œผ๋กœ ๋™๊ธฐํ™” ๋œ๋‹ค.

3. MySQL ๊ธฐ๋ณธ ์„ค์ •

3-1. ์™ธ๋ถ€ ์ ‘์† ๊ธฐ๋Šฅ ์„ค์ • (ํฌํŠธ 3306 ์˜คํ”ˆ)

์ฒ˜์Œ์— ์ด ๋ถ€๋ถ„์„ ์„ค์ •์„ ์•ˆํ•ด์คฌ๋”๋‹ˆ MySQL Workbench๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ–ˆ๋”๋‹ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.

1
$ sudo ufw allow mysql

3-2. MySQL ์‹คํ–‰

1
$ sudo systemctl start mysql

3-3. Ubuntu ์„œ๋ฒ„ ์žฌ์‹œ์ž‘์‹œ MySQL ์ž๋™ ์žฌ์‹œ์ž‘

1
$ sudo systemctl enable mysql

4. MySQL ์ ‘์†

1
$ sudo /usr/bin/mysql -u root -p

ERROR 1698 (28000)

์ฒ˜์Œ์— $ sudo mysql -u root -p ๋กœ ์ง„ํ–‰ํ–ˆ๋”๋‹ˆ ์•„๋ž˜์™€ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.

1
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

ํ•ด๊ฒฐ๋ฐฉ๋ฒ•: mysql ๋Œ€์‹  /usr/bin/mysql ๊ณผ ๊ฐ™์ด ๊ฒฝ๋กœ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ๋ช…์‹œํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

์„ฑ๊ณต์ ์œผ๋กœ ์ ‘์†ํ•˜๋ฉด ํ„ฐ๋ฏธ๋„ ์ฐฝ์ด ์•„๋ž˜์™€ ๊ฐ™์ด ๋ณ€๊ฒฝ๋œ๋‹ค.

1
mysql> ์—ฌ๊ธฐ๋‹ค๊ฐ€ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค

5. ์‚ฌ์šฉ์ž ๋“ฑ๋ก ๋ฐ ๊ถŒํ•œ ์„ค์ •

5-1. ์‚ฌ์šฉ์ž ์ •๋ณด ํ™•์ธ

1
mysql> SELECT User, Host, authentication_string FROM mysql.user;

5-2. TESTDB ๋ผ๋Š” ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ๋งŒ๋“ค๊ณ  ํ™•์ธ

1
2
mysql> CREATE DATABASE TESTDB;
mysql> SHOW DATABASES;

5-3. TESTDB ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ๊ณ„์ • testuser ๋งŒ๋“ค๊ณ  ํ™•์ธ

1
2
3
mysql> CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'mysql๋น„๋ฒˆ';
mysql> FLUSH PRIVILEGES;
mysql> SELECT User, Host, authentication_string FROM mysql.user;

5-4. TESTDB ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ๊ณ„์ • testuser ์— ๊ถŒํ•œ ๋ถ€์—ฌ

1
2
3
4
mysql> GRANT ALL PRIVILEGES ON ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋ฆ„.* FOR'testuser'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> SHOW GRANTS FOR'testuser'@'localhost';
mysql> SELECT User, Host, authentication_string FROM mysql.user;

Option 1. MySQL ๋ฒ„์ „ ํ™•์ธ

1
mysql> show variables like "%version%";

Option 2. Mysql ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ ๋ฐฉ๋ฒ•

1
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('๋ฐ”๊ฟ€๋น„๋ฒˆ');

๋˜๋Š”

1
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '๋ฐ”๊ฟ€๋น„๋ฒˆ';
profile on loading

Loading...