首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法通过MaxScale连接应用程序

无法通过MaxScale连接应用程序
EN

Stack Overflow用户
提问于 2019-12-30 16:22:31
回答 1查看 1.3K关注 0票数 1

我有3个节点Galera Cluseter和一个用于maxscale的节点。问题是只有我在maxscale.cnf中定义的maxscale用户可以通过监听服务连接到集群。所有节点都在本地网络中,可以互相看到。

maxscale.cnf

代码语言:javascript
复制
[maxscale]
threads=1

[Galera-Monitor]
type=monitor
module=galeramon
servers=server1,server2,server3
user=maxscale
password=qwe123
monitor_interval=1000

[Read-Write-Service]
type=service
router=readwritesplit
servers=server1, server2, server3
user=maxscale
password=qwe123

[Read-Only-Service]
type=service
router=readconnroute
servers=server1, server2, server3
user=maxscale
password=qwe123
router_options=slave

[Read-Write-Listener]
type=listener
service=Read-Write-Service
protocol=MariaDBClient
port=4006

[Read-Only-Listener]
type=listener
service=Read-Only-Service
protocol=MariaDBClient
port=4008

[server1]
type=server
address=192.168.122.93
port=3306
protocol=MariaDBBackend

[server2]
type=server
address=192.168.122.17
port=3306
protocol=MariaDBBackend

[server3]
type=server
address=192.168.122.13
port=3306
protocol=MariaDBBackend
代码语言:javascript
复制
root@maxscale:~# mysql -umaxscale -pqwe123 -h192.168.122.222 -P4006                                                                                   
Welcome to the MariaDB monitor.  Commands end with ; or \g. 
代码语言:javascript
复制
root@maxscale:~# mysql -umyuser -pmyuser -h192.168.122.222 -P4006
ERROR 1045 (28000): Access denied for user 'myuser'@'::ffff:192.168.122.222' (using password: YES)
代码语言:javascript
复制
root@sky:~# mysql -umyuser -pmyuser -h192.168.122.17
Welcome to the MariaDB monitor.  Commands end with ; or \g.
代码语言:javascript
复制
MariaDB [(none)]> show grants for myuser;
+-------------------------------------------------------------------------------------------------------+
| Grants for myuser@%                                                                                   |
+-------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'myuser'@'%' IDENTIFIED BY PASSWORD '*CBA73BBE5D9AF59311C3F4D7E8C20AA847F7B188' |
| GRANT ALL PRIVILEGES ON `mydatabase`.`pet` TO 'myuser'@'%'                                            |
+-------------------------------------------------------------------------------------------------------+

正如你所看到的,myuser在通过最大规模节点连接时出现了问题。我如何解决这个问题,并使任何应用程序连接到maxscale与他们自己的用户。

编辑:

这是我的maxscale用户权限:

代码语言:javascript
复制
MariaDB [(none)]> show grants;
+--------------------------------------------------------------------------------------------------------------------------------+
| Grants for maxscale@192.168.122.222                                                                                            |
+--------------------------------------------------------------------------------------------------------------------------------+
| GRANT SHOW DATABASES ON *.* TO 'maxscale'@'192.168.122.222' IDENTIFIED BY PASSWORD '*8DCDD69CE7D121DE8013062AEAEB2A148910D50E' |
| GRANT SELECT ON `mysql`.`db` TO 'maxscale'@'192.168.122.222'                                                                   |
| GRANT SELECT ON `mysql`.`user` TO 'maxscale'@'192.168.122.222'                                                                 |
+--------------------------------------------------------------------------------------------------------------------------------+
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-31 15:31:41

基于这个有用的链接:https://mariadb.com/kb/en/maxscale-troubleshooting/

检查您的节点配置上的以下权限:

代码语言:javascript
复制
GRANT SELECT ON mysql.user TO 'maxscale'@'maxscalehost';
GRANT SELECT ON mysql.db TO 'maxscale'@'maxscalehost';
GRANT SELECT ON mysql.tables_priv TO 'maxscale'@'maxscalehost';
GRANT SELECT ON mysql.roles_mapping TO 'maxscale'@'maxscalehost';
GRANT SHOW DATABASES ON *.* TO 'maxscale'@'maxscalehost';
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59527712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档