问题描述
我将Maxscale作为3个Galera节点的ReadWriteSplit。 节点1是主节点,其他2是从节点。
我总是通过以下方式在master上创建用户:
mysql -e "CREATE DATABASE ${DB_NAME} CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;"
mysql -e "CREATE USER IF NOT EXISTS '${DB_NAME}'@'10.1.0.%' IDENTIFIED BY '${DB_PASS}';"
mysql -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_NAME}'@'10.1.0.%';"
由于未重新启动任何点头(出于MariaDB升级或其他原因),一切正常。 但是,如果重新启动该节点,则在任何查询命中SLAVES Maxscale时都会声明:
error : (2648715) [mariadbbackend] Invalid authentication message from backend 'sql3'. Error code: 1044,Msg : #42000Access denied for user '${DB_NAME}'@'10.1.0.%' to database '${DB_NAME}'
warning: (2648715) [readwritesplit] Refresh rate limit (once every 30 seconds) exceeded for load of users' table.
要解决此问题,在MASTER,我需要再次GRANT ALL PRIVILEGES
:
mysql -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_NAME}'@'10.1.0.%';"
错误停止。这是错误还是我做的事情不正确?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)