내블로그으으

mariaDB 10.4 작업 본문

데이터베이스

mariaDB 10.4 작업

평범한_이시대청년 2024. 12. 26. 14:43

user테이블에서 특정user(minion) 권한 없애고, user 삭제까지의 과정

 

 

 

minion 계정의 접속가능한 위치를 특정IP(x.x.x.x)로 고정해두어
모든 IP에서 접속 가능하도록 '%'로 바꾸기

 

 

MariaDB [mysql]> select * from user;

+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+-----------------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+-
| Host            | User        | Password                                  | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_prive_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv ns | max_updates | max_connections | max_user_connections | plugin                | authentication_string                     | password_expired | is_role |
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+-----------------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+-
| localhost       | mariadb.sys |                                           | N           | N           | N           | N           | N           | N               | N                | N            | N               | N                | N                | N              | N                   | N                   0 |           0 |               0 |                    0 | mysql_native_password |                                           | Y                | N       |
| localhost       | root        | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | Y           | Y           | Y           | Y           | Y           | Y               | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                   0 |           0 |               0 |                    0 | mysql_native_password | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | N                | N       |
| localhost       | mysql       | invalid                                   | Y           | Y           | Y           | Y           | Y           | Y               | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                   0 |           0 |               0 |                    0 | mysql_native_password | invalid                                   | N                | N       |
| x.x.x.x         | minion      | *5F5FAAC17A9CE02124188337777700E36F84B660 | Y           | Y           | Y           | Y           | Y           | Y               | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                   0 |           0 |               0 |                    0 | mysql_native_password | *5F5FAAC17A9CE02124188337777700E36F84B660 | N                | N       |
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+-----------------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+-
4 rows in set (0.002 sec)

 

 

 

 

1. user를 아래와 같이 추가함

MariaDB [mysql]> grant all privileges on charlie.* to 'minion'@'%' identified by 'minion비번';
Query OK, 0 rows affected (0.001 sec)

 

 

 

1-1. user테이블 다시 조회해보니 맨밑에 HOST컬럼값이 '%' 로 설정된 User 새로생김  (근데 왜 권한은 다 N, N.. 이지..?)

MariaDB [mysql]> select * from user;
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| Host            | User        | Password                                  | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | Event_priv | Trigger_priv | Create_tablespace_priv | Delete_history_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin                | authentication_string                     | password_expired | is_role | default_role | max_statement_time |
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| localhost       | mariadb.sys |                                           | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password |                                           | Y                | N       |              |           0.000000 |
| localhost       | root        | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | Y          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | N                | N       |              |           0.000000 |
| localhost       | mysql       | invalid                                   | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | Y          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | invalid                                   | N                | N       |              |           0.000000 |
| %               | root        | *FE4F2D624C07AAEBB979DA5C980D0250C37D8F63 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | N          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *FE4F2D624C07AAEBB979DA5C980D0250C37D8F63 | N                | N       |              |           0.000000 |
| x.x.x.x         | minion      | *5F5FAAC17A9CE02124188337777700E36F84B660 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | N          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *5F5FAAC17A9CE02124188337777700E36F84B660 | N                | N       |              |           0.000000 |
| %               | minion      | *5F5FAAC17A9CE02124188337777700E36F84B660 | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *5F5FAAC17A9CE02124188337777700E36F84B660 | N                | N       |              |           0.000000 |
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
6 rows in set (0.003 sec)

 

 

 

1-2. 우선 저장?

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

 

 

 

 

1-3.  5번째 행의 user 권한 지우기

MariaDB [mysql]> revoke all on charlie.* from 'minion'@'x.x.x.x';
Query OK, 0 rows affected (0.001 sec)

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

 

 

 

 

1-4. 5번째 행의 user 권한이 Y, Y, Y ... -> N,N,N ... 으로 바뀜

MariaDB [mysql]> select * from user;
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| Host            | User        | Password                                  | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | Event_priv | Trigger_priv | Create_tablespace_priv | Delete_history_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin                | authentication_string                     | password_expired | is_role | default_role | max_statement_time |
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| localhost       | mariadb.sys |                                           | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password |                                           | Y                | N       |              |           0.000000 |
| localhost       | root        | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | Y          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | N                | N       |              |           0.000000 |
| localhost       | mysql       | invalid                                   | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | Y          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | invalid                                   | N                | N       |              |           0.000000 |
| %               | root        | *FE4F2D624C07AAEBB979DA5C980D0250C37D8F63 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | N          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *FE4F2D624C07AAEBB979DA5C980D0250C37D8F63 | N                | N       |              |           0.000000 |
| x.x.x.x         | minion      | *5F5FAAC17A9CE02124188337777700E36F84B660 | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *5F5FAAC17A9CE02124188337777700E36F84B660 | N                | N       |              |           0.000000 |
| %               | minion      | *5F5FAAC17A9CE02124188337777700E36F84B660 | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *5F5FAAC17A9CE02124188337777700E36F84B660 | N                | N       |              |           0.000000 |
+-----------------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
6 rows in set (0.002 sec)

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

 

 

 

 

1-5. 테이블에서 5번째 행 아예 삭제(=user삭제)

MariaDB [mysql]> drop user 'minion'@'x.x.x.x';
Query OK, 0 rows affected (0.001 sec)

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

 

 

 

1-6. 삭제됨

MariaDB [mysql]> select * from user;
+-----------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| Host      | User        | Password                                  | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | Event_priv | Trigger_priv | Create_tablespace_priv | Delete_history_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin                | authentication_string                     | password_expired | is_role | default_role | max_statement_time |
+-----------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| localhost | mariadb.sys |                                           | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password |                                           | Y                | N       |              |           0.000000 |
| localhost | root        | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | Y          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *F76A3223CE4B73C745CEB02F8A0D8FB54E4B8F61 | N                | N       |              |           0.000000 |
| localhost | mysql       | invalid                                   | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | Y          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | invalid                                   | N                | N       |              |           0.000000 |
| %         | root        | *FE4F2D624C07AAEBB979DA5C980D0250C37D8F63 | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y             | Y            | Y         | N          | Y               | Y          | Y          | Y            | Y          | Y                     | Y                | Y            | Y               | Y                | Y                | Y              | Y                   | Y                  | Y                | Y          | Y            | Y                      | Y                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *FE4F2D624C07AAEBB979DA5C980D0250C37D8F63 | N                | N       |              |           0.000000 |
| %         | minion      | *5F5FAAC17A9CE02124188337777700E36F84B660 | N           | N           | N           | N           | N           | N         | N           | N             | N            | N         | N          | N               | N          | N          | N            | N          | N                     | N                | N            | N               | N                | N                | N              | N                   | N                  | N                | N          | N            | N                      | N                   |          |            |             |              |             0 |           0 |               0 |                    0 | mysql_native_password | *5F5FAAC17A9CE02124188337777700E36F84B660 | N                | N       |              |           0.000000 |
+-----------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
5 rows in set (0.002 sec)

 

 

참고) 아까 1. 에서 추가한 minion계정의 권한이 다 N으로 설정되었는데

        그 이유는 DB명을 특정했기 때문임.

         아래와 같이 *로 변경하니, 권한 Y로 변경됨!

 

수정전: grant all privileges on charlie.* to 'minion'@'%' identified by 'minion비번';

                                             (특정 DB명)

 

수정후: grant all privileges on *.* to 'minion'@'%' identified by 'minion비번';

                                              (모든DB)

 

'데이터베이스' 카테고리의 다른 글

[DB] 분산 데이터 베이스의 투명성  (0) 2022.04.25
[DB] 정규화-헷갈리는 문제  (0) 2022.04.23
[DB] 정규화  (0) 2022.04.22
[DB] 관계 데이터베이스 언어-헷갈리는 문제  (0) 2022.04.22
[DB] 관계대수  (0) 2022.04.21