Как подключиться к ProxySQL из приложения

У меня есть Percona XtraDB Cluster, работающий на 3 узлах (узел1, узел2, узел3). Я настроил ProxySQL в 4-м узле (администратор).

У меня есть код приложения Python, пытающийся получить доступ к кластеру.

При подключении к порту 3306 узла 1, я могу подключиться.

import MySQLdb as mdb
db = mdb.connect(host="node1", port=3306,user="root", passwd="*****", db="percona")

Чтобы добиться балансировки нагрузки, приложение должно указывать на порт ProxySQL 6032.

import MySQLdb as mdb
db = mdb.connect(host="admin", port=6032,user="admin", passwd="*****", db="percona")

При попытке подключения я получаю следующую ошибку:

OperationalError: (1045, "ProxySQL Error: Access denied for user 'admin'@'' (using password: YES)")

Я использовал команду grant privilages в proxysql

grant all privileges on percona.* to 'admin'@'%' identified by password 'bullet';

К сожалению, я получил следующую ошибку,

ERROR 1045 (#2800): near "grant": syntax error

Поправьте меня если я ошибаюсь.

Нужно ли использовать другую конфигурацию для подключения к кластеру Percona XtraDB?

1 ответ

Решение

Порт 6032 предназначен для административного интерфейса командной строки. Вместо этого вы вместо этого захотите подключиться к порту 6033, который прослушивает весь трафик и выполняет распределение нагрузки по отношению к внутренним узлам PXC. Удачи!

Другие вопросы по тегам