解决因MySQL强制SSL导致无法连接NetApp Active IQ Unified Manager数据库的问题

Posted on

NetApp Active IQ Unified Manager(简称Unified Manager,前身为NetApp OnCommand Unified Manager)是NetApp推出用于监控管理NetApp磁盘阵列的工具。该工具可以发现、监控和接收通知以主动管理存储,同时还可以快速解决存储问题,以此来提高管理效率。

Unified Manager提供了外部直接访问其数据的权限。通过在Unified Manager控制台中创建一个数据库用户,就可以使用MySQL客户端直接读取其数据库,获取性能统计等信息。

在Unified Manager 9.6及之前的版本,其内置的MySQL数据库版本为5.7。当全新安装或升级到Unified Manager 9.7后,内置的MySQL将升级至8.0。由于MySQL 8对安全性要求的提升,因此之前使用非SSL方式直接访问数据库将会出错。

问题描述

当尝试使用MySQL客户端或者JDBC驱动连接Unified Manager数据库时,产生如下错误:

Error XXXX: Connections using insecure transport are prohibited while –require_secure_transport=ON.

造成这个问题的原因是MySQL 8默认会开启require_secure_transport参数,开启后会强制要求客户端以SSL方式连接。

解决方案

符合安全规范的解决方式是客户端使用SSL方式进行连接,但这要求提供有效的证书。一般Unified Manager都是部署在内部网络的,没有条件使用证书(或者使用NetApp提供的自签名证书),因此对安全性要求不高的话,较为方便的解决方法是关闭MySQL的require_secure_transport参数,允许非SSL连接。

1. 通过Console访问Unified Manager,并通过管理员账户登录。

注意:如果是在ESXi上通过OVF形式部署的Unified Manager,则需要通过vCenter Web Console或VMware Remote Console访问,不能使用SSH访问。

2. 在【Main Menu】主菜单中,选择“4) Support/Diagnostics”。

3. 在【Support/Diagnostics Menu】菜单中,直接输入eds命令进入diagnostics shell(诊断用命令行界面)。弹出的Warning提示中选择“y”,然后进入shell界面。

4. 查看当前MySQL使用的my.conf配置文件:

$ ls -l /etc/mysql/

# 由于配置了软链接,所以需要修改的MySQL配置文件应该为链接前的文件。
# 例如当前配置下,则应该修改my.cnf.large,其他类似的配置文件可以不动。
`````
lrwxrwxrwx 1 root root   23 Sep 1 09:00 my.cnf -> /etc/mysql/my.cnf.large
-r-xr-xr-x 1 root root 3311 Sep 1 09:00 my.cnf.large
`````

5. 编辑my.cnf配置文件(本例中实际为my.cnf.large):

$ sudo vi /etc/mysql/my.cnf.large

`````
[mysqld]
`````
tls_version=TLSv1.2
require_secure_transport=OFF #此处将ON修改成OFF。
`````

:w! #由于文件设置了只读,因此需要强制写入。

6. 保存后,退出diagnostics shell:

$ exit

7. 回到【Support/Diagnostics Menu】菜单,选择“b”退回到主菜单。

8. 在【Main Menu】主菜单中,选择“3) System Configuration”。

9. 在【System Configuration Menu】菜单中,选择“3) Reboot Virtual Machine”,关闭Unified Manager服务并重启。

10. 重启完成后,再重新尝试使用客户端连接,此时应该可以顺利连接MySQL。

END