[MariaDB] 계정 생성 및 권한 부여

MariaDB에서 계정을 생성하고 권한을 부여하는 방법입니다.

로그인

root의 패스워드를 입력하여 로그인합니다.

1
$ sudo mysql -u root -p

계정 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| test |
| triplet_db |
+--------------------+
6 rows in set (0.435 sec)

MariaDB [(none)]> use mysql;
Database changed

다음 명령어를 실행하여 사용자 계정들을 확인합니다.

1
2
3
4
5
6
7
8
9
10
MariaDB [mysql]> SELECT user, host FROM user;
+-------------+-----------+
| User | Host |
+-------------+-----------+
| | localhost |
| mariadb.sys | localhost |
| mysql | localhost |
| root | localhost |
+-------------+-----------+
4 rows in set (0.002 sec)

계정 생성

로컬에서만 접속이 가능하도록 계정을 생성하는 방법입니다.

1
CREATE USER '계정명'@'localhost' IDENTIFIED BY '비밀번호';
1
2
-- 예)
MariaDB [mysql]> CREATE USER 'test'@'localhost' IDENTIFIED BY 'test!@';

로컬 및 원격에서 접속이 가능하도록 계정을 생성하는 방법입니다.

1
CREATE USER '계정명'@'%' IDENTIFIED BY '비밀번호';
1
2
-- 예)
MariaDB [mysql]> CREATE USER 'test'@'%' IDENTIFIED BY 'test!@';

권한 부여

생성된 계정에 대해 모든 권한을 부여하도록 설정합니다.

1
grant all privileges on *.* to '계정명'@'%' identified by '비밀번호';
1
2
3
4
-- 예
MariaDB [mysql]> grant all privileges on *.* to 'test'@'%' identified by 'test!@';
-- 변경된 권한 적용
MariaDB [mysql]> flush privileges;

해당 데이터베이스에 대해서만 권한을 부여하도록 설정합니다.

1
grant all privileges on DB명.* to '계정명'@'%' identified by '비밀번호';
1
2
3
-- 예)
MariaDB [mysql]> grant all privileges on test_db.* to 'test'@'%' identified by 'test!@';
MariaDB [mysql]> flush privileges;

확인

계정 생성이 완료되면 생성된 계정으로 로그인합니다.

1
$ sudo mysql -u test -p
Share