关系数据库MySQL版

配置SSL CA证书用于访问MySQL实例

2024-06-13 07:34:34

操作场景

为了提高关系数据库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证书将会重新生成,用户需要下载最新的证书连接数据库,旧证书将失效无法进行数据库连接。

Navicat配置方法:

1.        打开Navicat。

2.        选择目标数据库并单击鼠标右键,选择编辑连接。

3.        选择SSL页签,选择.pem格式CA证书的路径。

4.        单击确定。

5.        通过双击目标数据库来测试能否正常连接。

通过SSL连接数据库示例代码,Python示例:

1.        需要首先安装依赖pymysql

            pip install pymysql

2.        编写代码

            import pymysql
 import traceback
 try:
     conn = pymysql.connect(
         host='192.168.*.*',
         user='*****',
         passwd='******',
         db='*****',
         ssl=True,
         ssl_ca='/path/ca_file_name')
     cursor = conn.cursor()
     cursor.execute('select version()')
     data = cursor.fetchone()
     print('Database version:', data[0])
     cursor.close()
 except pymysql.Error as exc:
     print(traceback.format_exc())


W9zAncg8t51g