반응형
MySQL - 액세스 권한 부여가 작동하지 않음
mysql의 특정 데이터베이스에 대한 접근 권한을 사용자에게 부여하려고 합니다.하지만 명령어는 효력을 발휘하지 못하는 것 같습니다.
제 말은 이렇습니다.
순서 1:
- db 'testdb' 생성
- testbd에서 'testuser'@'%'에게 권한을 부여합니다.*
- testdb 사용자(FAILS)를 사용하여 mysql에 액세스하려고 합니다.
root@bnode1 /]# mysql - h 172.22.191.html - u root - ppassword
MariaDB [(none)]>
MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS testdb;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on testdb.* to 'dummyuser'@'%' identified by 'password';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
[root@bnode1 /]#
[root@bnode1 /]# mysql -h 172.22.191.202 -u dummyuser -ppassword
ERROR 1045 (28000): Access denied for user 'dummyuser'@'bnode1' (using password: YES)
mysql 데이터베이스에서는 다음과 같이 dummyuser의 grant 권한을 확인할 수 있습니다.
MariaDB [(none)]> show grants for 'dummyuser';
+-----------------------------------------+
| Grants for dummyuser@% |
+-----------------------------------------+
| GRANT USAGE ON *.* TO 'dummyuser'@'%' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' |
| GRANT ALL PRIVILEGES ON `testdb`.* TO 'dummyuser'@'%' |
+-----------------------------------------+
2 rows in set (0.00 sec)
스텝 2: 이제 다른 것을 시도했습니다.사용자 'dummyuser'@'bnode1'에게 동일한 명령어를 부여하여 액세스 할 수 있게 되었습니다.
root@bnode1 /]# mysql -h 172.22.191.202 -u root -ppassword
Welcome to the MariaDB monitor. Commands end with ; or \g.
...
MariaDB [(none)]> grant all privileges on testdb.* to '**dummyuser'@'bnode1'** identified by 'passwor>
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
[root@bnode1 /]#
[root@bnode1 /]#
[root@bnode1 /]# mysql -h 172.22.191.202 -u dummyuser -ppassword
Welcome to the MariaDB monitor. Commands end with ; or \g.
...
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
저는 mysql 전문가가 아닙니다.누군가 제가 뭘 잘못하고 있는지 설명해 주실 수 있나요?
ERROR 1045 (28000):사용자 'dummyuser'@'bnode1'에 대한 액세스가 거부되었습니다(암호: YES 사용).
다른 호스트에서 연결을 시도하여 'bnode1'이 'dummyuser'로 제한되었는지 확인해야 할 수 있습니다.
또는 신규 사용자(create user 명령어를 표시하지 않았기 때문에 기존 사용자로 추측)를 생성하여 grant 명령어를 실행할 수 있습니다.
그럴 가능성은 낮지만 만약을 위해 my.cnf에서 'blocks=0.0.0'을 확인해야 합니다.
언급URL : https://stackoverflow.com/questions/29176236/mysql-grant-access-permissions-does-not-work
반응형
'programing' 카테고리의 다른 글
어레이의 마지막 요소를 삭제하지 않고 가져오는 가장 좋은 방법은 무엇입니까? (0) | 2022.12.29 |
---|---|
데이터베이스 테이블을 대량의 테스트 데이터로 채우다 (0) | 2022.12.29 |
클래스 org.hibernate.proxy.pojo.bytebuddy의 시리얼라이저를 찾을 수 없습니다.바이트 버디가로채기 (0) | 2022.12.09 |
과학적 표기법을 사용하지 않고 정확하게 NumPy 배열 인쇄 (0) | 2022.12.09 |
MySQL/MariaDB에서 명시적으로 쿼리되는 컬럼을 찾을 수 있습니까? (0) | 2022.12.09 |