最近做了一个mysql主从,导致部署在从数据库上的项目连接不到主数据库。

由于服务器比较紧张,又要装mysql,又要充当服务器。有A,B服务器。A中Mysql充当主数据库,B中mysql从数据库。A中部署项目,项目连接数据库A。B中部署数据库,项目连接数据库A。因为配置主从的时候.
A中授权模式是:(1-1)grant replication slave on . to ‘账号’@‘B的Ip’ identified by ‘密码’;。这样导致B中的服务只有在slave模式下才能有权去连接A。导致项目启动不能连接上数据库。但是奇怪的是,可以通过命令连接到数据库。
最后解决方案我目前是:
GRANT ALL PRIVILEGES ON . TO ‘账号’@‘B的ip’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION ;
授予所有权限给B服务器。
在安装数据的时候,我已经授权
(2-2)GRANT ALL PRIVILEGES ON . TO ‘账号’@’%’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION ;
所有的ip未白名单。
个人理解。在1-1这边的主从授权覆盖了2-2中的授权。因为我在数据库中发现授权的模式2个都存在。这个机制有点类似shiro的配置,符合所有,但是,个别大于全局。
所以,目前就是给B的Ip也服务所有模式的权限。

你可能感兴趣的:(mysql)