配置SSL CA证书用于访问MySQL实例 本页介绍如何配置SSL CA证书用于访问关系数据库MySQL版的实例。 操作场景 为了提高关系数据库MySQL版的链路安全性,您可以启用SSL(Secure Sockets Layer)加密,并安装SSL CA证书到需要的应用服务。SSL在传输层对网络连接进行加密,能提升通信数据的安全性和完整性,同时会增加网络连接响应时间。 约束限制 实例的SSL状态需要为“开启”状态。 已下载SSL CA证书。 操作步骤 开启SSL加密后,应用或者客户端连接MySQL时需要配置SSL CA证书。本文以MySQL Workbench、Navicat配置方法为例,介绍SSL CA证书安装方法。其它应用或者客户端请参见对应产品的使用说明。 MySQL Workbench配置方法: 1. 打开MySQL Workbench。 2. 选择Database > Manage Connections。 3. 启用Use SSL,并导入SSL CA证书。 说明 如果关闭SSL后又需要重新开启,SSL CA证书将会重新生成,用户需要下载最新的证书连接数据库,旧证书将失效无法进行数据库连接。 为防止开启SSL后无需证书也可以连接数据库,请设置用户登录方式限制,指令可参考:alter user 'root'@'%' require ssl。 Navicat配置方法: 1. 打开Navicat。 2. 选择目标数据库并单击鼠标右键,选择编辑连接。 3. 选择SSL页签,选择.pem格式CA证书的路径。 4. 单击确定。 5. 通过双击目标数据库来测试能否正常连接。 通过SSL连接数据库示例代码,Python示例: 1. 需要首先安装依赖pymysql shell pip install pymysql 2. 编写代码 python import pymysql import traceback try: conn pymysql.connect( host'192.168..', user'', passwd'', db'', sslTrue, sslca'/path/cafilename') cursor conn.cursor() cursor.execute('select version()') data cursor.fetchone() print('Database version:', data[0]) cursor.close() except pymysql.Error as exc: print(traceback.formatexc())