반응형
와일드카드 호스트를 사용한 MariaDB 부여 권한이 작동하지 않습니다.
5.5.35-MariaDB Server를 Openstack keystone 설치에 사용하고 있습니다.
다음 두 명령은 사용자 키스톤에 대한 권한을 삽입하는 데 사용됩니다.
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone';
flush privileges;
그러나 /etc/hosts 파일에 기록된 호스트 이름을 지정할 때 액세스 거부 문제가 발생했습니다.'localhost'를 사용한 액세스가 정상적으로 작동하는 동안.
[root@controller mariadb]# mysql -ukeystone -pkeystone -hcontroller
ERROR 1045 (28000): Access denied for user 'keystone'@'controller' (using password: YES)
[root@controller mariadb]# mysql -ukeystone -pkeystone -hlocalhost
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 98
Server version: 5.5.35-MariaDB MariaDB Server
제가 해결할 수 있는 방법은 호스트 이름에 명시적으로 권한을 부여하는 것입니다. 그러면 다음과 같이 작동합니다.
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'controller' IDENTIFIED BY 'keystone';
위 와일드카드 호스트 '%'이(가) 작동하지 않으므로 정상 동작입니까?
갱신하다
쿼리 결과는 다음과 같습니다.
MariaDB [(none)]> SELECT User, Host FROM mysql.user WHERE User = 'keystone';
+----------+-----------+
| User | Host |
+----------+-----------+
| keystone | % |
| keystone | localhost |
+----------+-----------+
2 rows in set (0.00 sec)
IP 주소와 호스트 이름은 다음과 같습니다.
[root@controller rc]# ip address show Mgmt | grep inet
inet 10.0.10.101/24 brd 127.255.255.255 scope global Mgmt
inet6 fe80::a00:27ff:fe9e:6e1a/64 scope link
[root@controller rc]# cat /etc/hosts | grep controller
10.0.10.101 controller
'localhost'가 아닌 사용자 호스트 이름입니다.1045 오류를 수정했습니다.
키스톤에 대한 모든 권한을 부여합니다.* 'keystone'@'controller'에 'keystone'으로 식별됨;
언급URL : https://stackoverflow.com/questions/33052505/mariadb-grant-privilege-by-using-wildcard-host-is-not-working
반응형
'programing' 카테고리의 다른 글
sigprocmask()에서 Set and Oldset(설정 및 이전 설정) (0) | 2023.10.05 |
---|---|
푸시 사이드 메뉴로 신체 스크롤 방지 방법 (0) | 2023.10.05 |
도커 Ubuntu 이미지 내에 패키지를 설치할 수 없습니다. (0) | 2023.09.25 |
Typescript 컴파일 중 상대 가져오기 문에 .js 확장자 추가(ES6 모듈) (0) | 2023.09.25 |
ID 값이 같은 요소가 여러 개일 때 jQuery는 어떻게 작동합니까? (0) | 2023.09.25 |