Percona
ProxySQL 使用者未連接 - XtraDB
我正在嘗試建立一個由 3 個節點組成的 xtraDB 集群。現在我已經啟動並執行了集群,並且按照說明我正在嘗試設置 ProxySQL 以進行負載平衡。
所以我在所有 3 個節點上都安裝了 proxySQL。現在我正在嘗試使用管理工具對其進行配置。但是每次我執行命令時:
[root@node1 log]# proxysql-admin --config-file=/etc/proxysql-admin.cnf --enable
它回來了:
此腳本將協助配置 ProxySQL(目前僅支持 Percona XtraDB 集群與 ProxySQL 結合使用)
ProxySQL read/write configuration mode is singlewrite ERROR 1045 (28000): ProxySQL Error: Access denied for user 'proxysql_admin'@'' (using password: YES) Please check the ProxySQL connection parameters! Terminating.
現在我會說這個錯誤非常簡單。但是,我在 MySQL 集群和 .cnf 文件中都正確定義了使用者 proxysql_admin。
這是我的 proxysql-admin.cnf 文件:
# proxysql admin interface credentials. export PROXYSQL_DATADIR='/var/lib/proxysql' export PROXYSQL_USERNAME='proxysql_admin' export PROXYSQL_PASSWORD='placeholder_pass' export PROXYSQL_HOSTNAME='localhost' export PROXYSQL_PORT='6032' # PXC admin credentials for connecting to pxc-cluster-node. export CLUSTER_USERNAME='proxysql_admin' export CLUSTER_PASSWORD='placeholder_pass' #export CLUSTER_HOSTNAME='localhost' export CLUSTER_HOSTNAME='ccloud' export CLUSTER_PORT='3306' # proxysql monitoring user. proxysql admin script will create this user in pxc to monitor pxc-nodes. export MONITOR_USERNAME='monitor' export MONITOR_PASSWORD='placeholder_pass' # Application user to connect to pxc-node through proxysql export CLUSTER_APP_USERNAME='proxysql_user' export CLUSTER_APP_PASSWORD='placeholder_pass' # ProxySQL read/write hostgroup export WRITE_HOSTGROUP_ID='10' export READ_HOSTGROUP_ID='11' # ProxySQL read/write configuration mode. export MODE="singlewrite" # ProxySQL Cluster Node Priority File export HOST_PRIORITY_FILE=$PROXYSQL_DATADIR/host_priority.conf
這是mysql集群上的使用者:
mysql> select User,Host from mysql.user; +----------------+-----------+ | User | Host | +----------------+-----------+ | proxysql_admin | | | proxysql_admin | % | | mysql.session | localhost | | mysql.sys | localhost | | proxysql_admin | localhost | | proxysql_user | localhost | | root | localhost | | sstuser | localhost | +----------------+-----------+
我已經嘗試過幾次更改介面,但這似乎不是問題。任何人都知道為什麼我的使用者沒有連接?
以防萬一,這是我正在嘗試的節點上集群的 my.cnf:
# # The Percona XtraDB Cluster 5.7 configuration file. # # # * IMPORTANT: Additional settings that can override those from this file! # The files must end with '.cnf', otherwise they'll be ignored. # Please make any edits and changes to the appropriate sectional files # included below. # !includedir /etc/my.cnf.d/ !includedir /etc/percona-xtradb-cluster.conf.d/ [mysqld] server-id=1 datadir=/mysql-data socket=/mysql-data/mysql.sock pid-file=/var/run/mysqld/mysqld.pid wsrep_provider=/usr/lib64/galera3/libgalera_smm.so wsrep_cluster_name=ccloud wsrep_cluster_address=gcomm://ip1,ip2,ip3 wsrep_node_name=pxc1 wsrep_node_address=ip1 wsrep_sst_method=xtrabackup-v2 wsrep_sst_auth=sstuser:placeholder_pass pxc_strict_mode=ENFORCING binlog_format=ROW default_storage_engine=InnoDB innodb_autoinc_lock_mode=2
原來我已經在 ProxySQL 中手動創建了 mysql 使用者表中的管理員使用者,這是不允許的。
刪除 proxysql 數據庫文件 /var/lib/proxysql/proxysql.db 並重新啟動 proxysql 服務(回滾到預設數據庫)為我解決了這個問題。
看起來您的 proxysql 數據庫沒有 user
proxysql_admin
。請使用預設的 proxysql 使用者憑據(管理員/管理員)。