MYSQL notes
- Nest
- Development
- Category
- Database
- Hit
- 1465
- Star
- 0
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;