Как подключиться к 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. Удачи!