MYSQL notes
- ๋ฅ์ง
- Development
- ๋ถ๋ฅ
- Database
- ๋ฑ๋ก์ผ
subquery ์ฌ์ฉํ๊ธฐ
๋๊ฐ์ ํ ์ด๋ธ์ ์กฐ๊ฑด์ ์กฐํฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ
select * from TABLE where FIELD in (select id from TABLE_NAME where level>1);
๋ก์ปฌํ๊ฒฝ์์์ ์ฌ์ฉ์ ์ถ๊ฐ/์ญ์
root ๊ณ์ ์ผ๋ก ์ ์ํ๊ธฐ
sudo mysql
์ฌ์ฉ์ ์ถ๊ฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ถ๊ฐํ๊ธฐ
// ์ฌ์ฉ์ ์ถ๊ฐ
> create user '{USERNAME}'@'%' identified by '{PASSWORD}';
// ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ถ๊ฐ
> CREATE DATABASE `{DATABASE}` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
> CREATE DATABASE `{DATABASE}` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
// ์ฌ์ฉ์ ๊ถํ์ฃผ๊ธฐ
> grant all privileges on {DATABASE}.* to '{USERNAME}'@'%';
// ๊ถํ ๊ฐฑ์
> flush privileges;
๋ง์ฝ Access denied for user 'root'@'localhost' ๊ด๋ จ ์ค๋ฅ๊ฐ ๋์จ๋ค๋ฉด.. ๋ค์๊ณผ ๊ฐ์ด ์คํํด๋ณธ๋ค.
sudo mariadb-secure-installation
์ฐธ๊ณ url
์ฌ์ฉ์ ์กฐํํ๊ธฐ
๋ค์๊ณผ ๊ฐ์ ๋ช ๋ น์ผ๋ก ์ฌ์ฉ์ ์กฐํํ ์ ์๋ค.
MariaDB [(none)]> select host,user from mysql.user;
+-----------+----------+
| Host | User |
+-----------+----------+
| % | redgoose |
| localhost | root |
+-----------+----------+
2 rows in set (0.001 sec)
๋ง์ฝ ๋ค์๊ณผ ๊ฐ์ด ๊ฐ์ ์ ์ ๋ก ์ฌ๋ฌ ํธ์คํธ๋ก ๋์จ๋ค๋ฉด ํ๋๋ง ๋จ๋๋ก ๋๋จธ์ง๋ ์ง์์ค์ผ ํฉ๋๋ค.
ํธ์คํธ๋ %๋ง ๋จ๋๋ก ๋๋จธ์ง๋ ์ง์ฐ๋๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค.
+-----------+----------+
| Host | User |
+-----------+----------+
| % | redgoose |
| localhost | redgoose |
| localhost | root |
+-----------+----------+
๋ค์ ๋ช ๋ น์ผ๋ก ์ฌ์ฉ์๋ฅผ ์ญ์ ํ ์ ์์ต๋๋ค.
drop user {USERNAME}@{HOST};
๋ณ๊ฒฝ๋ ๊ถํ ์ ์ฉํ๊ธฐ
์ค์ ๋ก ์ ์ฉ์ํค๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์คํํฉ๋๋ค.
flush privileges;
0๊ฐ์ ๋๊ธ
๋ฑ๋ก๋ ๋๊ธ์ด ์์ต๋๋ค.