Mysql开启ssl加密协议及Java客户端配置操作指南
Mysql开启ssl加密协议及Java客户端配置操作指南
- Mysql配置
- 验证Mysql开启SSL
- Java客户端操作
- 生成证书密码
- 配置数据库连接
- 工具配置
Mysql配置
Mysql需要配置对应的ssl账号密码,同时对该账号开启ssl验证,具体操作由DBA完成,这里我就不再赘述,作为Java客户端只需要拿到DBA配置的账号对应的ca.pem证书信息即可开启后面的操作。
验证Mysql开启SSL
验证命令
show global variables like '%ssl%';
验证结果如图
开启ssl协议之后可以看到对应Mysql服务器的证书路径,拿到证书文件后放在windows本地目录等待下一步操作
Java客户端操作
这里我测试本地windows环境的操作,linux的操作基本相同,只是文件路径的区别而已
生成证书密码
首先需要基于上一步Mysql配置完ssl账户生成对应的ca.pem证书,通过jvm的keytool工具将ca.pem证书放入到truststore仓库中;
windows操作系统可以直接在上一步存放ca.pem证书的目录通过快捷键【Ctrl+Shift+鼠标右键】唤起Powershell窗口,执行命令
keytool -importcert -alias MySQLCACert -file ca.pem -keystore truststore -storepass 123456
其中:truststore 是存储证书的密钥库,123456是密钥库口令
生成之后可以查看一下是否生成成功,操作命令
keytool -list -keystore truststore
输入密钥库口令之后可以看到证书信息
回到唤起Powershell窗口的文件夹(即存放ca.pem)的文件夹下可以看到生成的证书密钥库文件truststore,如图
这样证书密码就算生成成功了,证书密码路径为: E:\2022mycomputer\mysql_cert\truststore
配置数据库连接
数据库连接如下
datasource.masterUrl=jdbc:mysql://127.0.0.1:3306/ei_app?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&verifyServerCertificate=true&requireSSL=true&sslMode=verify_ca&trustCertificateKeyStoreUrl=file:E:/2022mycomputer/mysql_cert/truststore&trustCertificateKeyStorePassword=123456
参数说明:
配置完成之后再使用对应ca.pem证书的账户密码即可以正常连接Mysql了
工具配置
这里举例工具为navicat ,个人测试的navicat 15可以通过ssl连接数据库,navicat 11 连接不成功,连接操作如图
配置SSL证书信息
配置完成之后点击连接测试,如果你当前的navicat版本支持SSL连接的话会提示
如果配置没有问题但是连接测试提示失败的,那就是当前版本的navicat 不支持SSL连接
![](https://img-blog.csdnimg.cn/2b889277d57a492f85c3cac02004d4ee.png)
可以升级navicat到高的版本即可.
参考文章:https://developer.aliyun.com/article/950161
Mysql开启ssl加密协议及Java客户端配置操作指南相关推荐
- mysql ssl jdbc_【MySQLSSLJAVA】关于MySQL开启SSL后,jdbc的配置
一.MySQL服务端配置 # vim /etc/my.cnf ########################################### [mysqld] require_secure ...
- MySQL使用ssl连接,java通过ssl连接数据库
java 通过ssl连接数据库 MySQL使用ssl连接,java通过ssl连接数据库 MySQL驱动与MySQL版本的关系 什么是SSL? MySQL5.7.34 ssl配置文件和参数 MySQL服 ...
- Docker MySQL开启SSL加密传输方案
Docker MySQL开启SSL加密传输方案 产品:Docker MySQL 版本: 5.6 环境: CentOS Linux 7 文章目录 Docker MySQL开启SSL加密传输方案 方案背景 ...
- MySQL开启SSL的利与弊
最近,准备升级一组MySQL到5.7版本,在安装完MySQL5.7后,在其data目录下发现多了很多.pem类型的文件,然后通过查阅相关资料,才知这些文件是MySQL5.7使用SSL加密连接的.本篇主 ...
- MySQL开启ssl证书
由于在主从复制中数据是明文的,所以就大大降低了安全性 因此需要借助ssl加密来增加其复制的安全性 5.6版本之上 主默认含有证书 MySQL 5.7.18 加密连接mysql_ssl_rsa_setu ...
- mysql开启ssl以及如何创建证书
MYSQL版本8.0.32,默认是开启ssl的,同时也是自带证书的在/var/lib/mysql/下 jdbc连接Mysql数据库需要使用SSL时,可以按一下步骤进行设置: 前置条件(可跳过): 1. ...
- MYSQL 开启 SSL
mysql5.7以上开启并配置 ssl 超级简单的教程 1. 执行以下命令: ##### mysql5.7 提供的 msyql_ssl_rsa_setup 功能,能直接生成ssl密钥和秘银(该文件一般 ...
- Mysql 开启ssl连接
注意!本文是针对Mysql 5.7版本以上数据库,版本较低者可看这一篇博客:https://www.cnblogs.com/zhoujinyi/p/4191096.html 1. 检查当前SSL / ...
- win2016开启ntp_WindowsServer2016NTP服务端和客户端配置【NTP时间同步服务器】
目标:A.B两台Windows Server 2016系统的服务器.B要做为NTP服务器使用,而只有A可以连到互联网.所以先将A作为NTP服务端,再将B作为既是服务端又是客户端.其它设备同B服务器同步 ...
最新文章
- debian php redis,debian7.7环境下 源码安装redis以及phpredis扩展
- Node.js 部署免费/自动续订 HTTPS
- 困扰多年的PCB散热问题终于可以解决了!
- Skywalking-10:Skywalking查询协议——GraphQL
- sqlite的增删改查操作
- 数字信号处理实验三 FIR数字滤波器设计与软件实现
- 【第三方对接】使用 永中Office 实现在线 Office 整合到 Spring 项目
- 2023计算机毕业设计SSM最新选题之javaAI学院教务信息管理系统lx9v9
- 在win11和win10的edge浏览器运行flash网址设置详解
- 掌握通过计算机实现香农编码,信息论编码实验二香农编码
- 认知水平高下定义及提高认知水平的方法
- jQuery笔记——UI
- iOS中的时间和日期
- JavaWeb 宠物领养管理系统实现(源码分享)
- 三十岁——男人创业的最佳时机
- gpu虚拟 服务器,5种GPU虚拟化技术的详细资料讲解
- AutoCAD2005中文版【32位】下载地址 仅供学习交流
- Vim查找替换操作 --- 查找和替换
- 【慎入】秘境探索之一个.NET 对象从内存分配到内存回收
- LIMS实验室管理系统包括哪些功能,如何实现检测全程无纸化