连接类 本节介绍了连接类相关问题与处理方法。 root账号的ssltype修改为ANY后无法登录、 场景描述 在控制台以root帐号通过DAS登录实例时,报错Access denied。 原因分析 1. 查看mysql.user表中的root帐号信息,排查客户端IP范围是否正确、是否使用SSL。 SELECT FROM mysql.user WHERE User'root'; 如果发现root帐号的ssltype 被设置为 ANY ,表明root帐号需要使用SSL连接。 2. 查看SSL开启情况。 show variables like '%ssl%'; 发现该实例未开启SSL: 因此,问题原因是自行修改root帐号的ssltype 为ANY后,导致无法登录。 解决方案 将root帐号的ssltype修改为空即可,参考命令: update mysql.user set ssltype'' where user 'root'; 如果要将其他所有用户帐号的ssltype修改为空,参考命令: update mysql.user set ssltype'' where user not like 'mysql%'; SSL使用与介绍 场景描述 使用SSL无法连接上数据库。 原因分析 优先检查网络是否已经连通,如果不带SSL的连接方式可以连接,则可能是mysql client或对应的数据库驱动的版本不兼容。 解决方案 TaurusDB是兼容社区8.0以上版本的,需要使用8.0及以上版本的mysql client或数据库驱动。 SSL(Secure Socket Layer:安全套接字层)使用数据加密、身份校验和消息完整性校验,为连接提供安全性保证。 SSL提供的功能主要包含 : 1. 加密数据传输:利用对称密钥算法对传输的数据进行加密。 2. 身份校验:基于证书使用数字签名的方法对客户端与服务器进行身份验证。 3. 消息完整性校验:消息传输过程中使用MAC算法来检验消息的完整性。 注意 当服务端的SSL开启时,客户端的身份验证是可选的,即:即使服务端开启了SSL,客户端也可以不通过SSL的方式连接服务端,此时也可以正常通信,只是数据不会被加密。 如果不是通过SSL的方式,那么其在网络中的传输数据会以明文进行,存在安全隐患。 TaurusDB数据库服务端会默认开启服务端会默认开启SSL,客户业务使用时可以在客户端自行选择是否使用SSL。