查看MySQL服务器是否启用了SSL连接,并且查看ssl证书是否存在
文章目录
一、查看MySQL服务器是否启用了SSL连接
1.登录MySQL服务器
2.查看SSL配置
二、查看证书是否存在
前言
查看MySQL服务器是否启用了SSL连接,并且查看ssl证书是否存在
一、查看MySQL服务器是否启用了SSL连接
1.登录MySQL服务器
在Linux终端中,可以通过以下命令登录MySQL服务器:
mysql -u username -p
其中,username为MySQL服务器的用户名。执行该命令后,会提示输入密码。

2.查看SSL配置
登录MySQL服务器后,可以使用以下命令查看SSL配置:
SHOW VARIABLES LIKE '%ssl%';
该命令将显示MySQL服务器的SSL配置信息,例如:
+---------------+---------------------------------+
| Variable_name | Value |
+---------------+---------------------------------+
| have_openssl | YES |
| have_ssl | YES |
| ssl_ca | /etc/mysql/ssl/ca-cert.pem |
| ssl_capath | |
| ssl_cert | /etc/mysql/ssl/server-cert.pem |
| ssl_cipher | |
| ssl_key | /etc/mysql/ssl/server-key.pem |
+---------------+---------------------------------+
其中,have_ssl的值为YES表示MySQL服务器启用了SSL连接。如果have_ssl的值为NO,则表示MySQL服务器未启用SSL连接。

如果MySQL服务器启用了SSL连接,还需要检查客户端是否配置了SSL证书。如果客户端未配置SSL证书,则无法使用SSL连接。具体的SSL连接配置可以参考MySQL官方文档。
二、查看证书是否存在
2.1、检查存在与否
你可以通过在终端中运行以下命令来检查MySQL服务器是否启用了SSL连接:
mysql -u <用户名> -p --ssl-mode=REQUIRED -e "SHOW STATUS LIKE 'Ssl_cipher'"
其中 `<用户名>` 是你的MySQL用户名。运行该命令后,系统会提示你输入MySQL密码。如果MySQL服务器已经启用SSL连接,命令行会返回一个类似于 `Ssl_cipher | AES128-SHA` 的输出。如果没有启用SSL连接,命令行会返回一个空的输出。

2.2、不存在的解决方法
如果你运行 `SHOW STATUS LIKE 'Ssl_cipher'` 命令返回的结果为空,说明MySQL服务器没有启用SSL连接。
要启用MySQL服务器的SSL连接,你需要完成以下步骤:
1. 生成SSL证书和密钥文件。你可以使用以下命令生成SSL证书和密钥文件:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/mysql/ssl/mysql-server.key -out /etc/mysql/ssl/mysql-server.crt
这条命令将在 `/etc/mysql/ssl/` 目录下生成一个名为 `mysql-server.crt` 的证书文件和一个名为 `mysql-server.key` 的私钥文件。

2. 修改MySQL配置文件。
你需要编辑MySQL配置文件 `/etc/mysql/mysql.conf.d/mysqld.cnf`

![]()
并添加以下几行:
[mysqld]
ssl=ON
ssl-cert=/etc/mysql/ssl/mysql-server.crt
ssl-key=/etc/mysql/ssl/mysql-server.key
这些配置将启用MySQL服务器的SSL连接,并指定证书和密钥文件所在的路径。

此处的wq是要按esc键,再加入的!!!!
3. 重新启动MySQL服务器。你需要重新启动MySQL服务器以使配置生效:
sudo systemctl restart mysql
运行以上命令后,MySQL服务器就会启用SSL连接。

4. 检查SSL连接是否启用。你可以再次运行以下命令来检查MySQL服务器是否启用了SSL连接:
mysql -u <用户名> -p --ssl-mode=REQUIRED -e "SHOW STATUS LIKE 'Ssl_cipher'"
如果MySQL服务器已经启用SSL连接,命令行会返回一个类似于 `Ssl_cipher | AES128-SHA` 的输出。
再次运行上述的代码

2.3、如果2.2的方法使用完成之后还是不能正常的使用ssl证书,试一下这种方法
如果你已经按照之前提供的方法安装和配置了 MySQL 的 SSL 连接,但是在连接 MySQL 时仍然没有 SSL 值,那么可能是因为你未能正确地启用 SSL。
首先,你需要检查你的 MySQL 服务器是否已经启用了 SSL。你可以使用以下命令来检查:
SHOW VARIABLES LIKE '%ssl%';
如果你看到 `have_ssl` 的值为 `YES`,那么 SSL 已经启用。如果不是,你需要启用它。
在 Ubuntu 16.04 上启用 MySQL 的 SSL 连接,你需要在 MySQL 配置文件中添加以下行:
ssl-ca=/path/to/ca-cert.pem
ssl-cert=/path/to/server-cert.pem
ssl-key=/path/to/server-key.pem
其中 `/path/to/ca-cert.pem` 指向你的 CA 证书文件,`/path/to/server-cert.pem` 指向你的服务器证书文件,`/path/to/server-key.pem` 指向你的服务器私钥文件。
启用 SSL 之后,你需要重启 MySQL 服务器以使更改生效。你可以使用以下命令重启 MySQL 服务:
sudo service mysql restart
之后,你应该能够成功连接到 MySQL 并看到 SSL 值为 `Cipher in use is...`。如果仍然没有 SSL 值,你可以尝试在连接字符串中显式地指定 SSL:
jdbc:mysql://hostname:port/dbname?verifyServerCertificate=false&useSSL=true&requireSSL=true
其中 `useSSL=true` 表示启用 SSL,`requireSSL=true` 表示连接必须使用 SSL。
在 Ubuntu 16.04 上,MySQL 的配置文件位于 `/etc/mysql/mysql.conf.d/mysqld.cnf`。你需要使用 root 权限编辑该文件以添加 SSL 配置。你可以使用以下命令打开该文件:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
然后在 `[mysqld]` 部分添加以下行:
ssl-ca=/path/to/ca-cert.pem
ssl-cert=/path/to/server-cert.pem
ssl-key=/path/to/server-key.pem
其中 `/path/to/ca-cert.pem` 指向你的 CA 证书文件,`/path/to/server-cert.pem` 指向你的服务器证书文件,`/path/to/server-key.pem` 指向你的服务器私钥文件。请确保将这些路径替换为你自己的路径。

完成后保存并退出该文件,然后重启 MySQL 服务器以使更改生效:
sudo service mysql restart
这样,MySQL 就已经启用了 SSL 连接。
总结
以上就是今天的内容~
最后欢迎大家点赞👍,收藏⭐,转发🚀,
如有问题、建议,请您在评论区留言💬哦。
相关文章:
查看MySQL服务器是否启用了SSL连接,并且查看ssl证书是否存在
文章目录 一、查看MySQL服务器是否启用了SSL连接 1.登录MySQL服务器 2.查看SSL配置 二、查看证书是否存在 前言 查看MySQL服务器是否启用了SSL连接,并且查看ssl证书是否存在 一、查看MySQL服务器是否启用了SSL连接 1.登录MySQL服务器 在Linux终端中…...
华为OD机试真题 Java 实现【表示数字】【牛客练习题】
一、题目描述 将一个字符串中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。 数据范围:字符串长度满足1≤n≤100 。 二、输入描述 输入一个字符串。 三、输出描述 字符中所有出现的数字前后加上符号“*”,其他字符保持不变。 四、解题思路…...
使用Python进行接口性能测试:从入门到高级
前言: 在今天的网络世界中,接口性能测试越来越重要。良好的接口性能可以确保我们的应用程序可以在各种网络条件下,保持流畅、稳定和高效。Python,作为一种广泛使用的编程语言,为进行接口性能测试提供了强大而灵活的工…...
sed编辑器
文章目录 一.sed命令基础1.sed概念2.sed的工作流程3.命令格式4.sed命令的常用选项5.sed命令的操作符 二.sed命令的打印功能1.打印文本文件内容1.1 格式1.2 默认打印方式 2.指定行打印2.1 指定行号打印2.2 只打印文件的行数2.3 即打印文件的行号也打印文件的内容2.4 即显示行也显…...
深入理解深度学习——正则化(Regularization):稀疏表示
分类目录:《深入理解深度学习》总目录 另一种策略是惩罚神经网络中的激活单元,稀疏化激活单元。这种策略间接地对模型参数施加了复杂惩罚。我们已经在《深入理解深度学习——正则化(Regularization):参数范数惩罚》中讨…...
【Android】分别用JAVA和Kotlin实现横向扫描的动画效果
Android 横向扫描的动画可以通过使用 ViewPropertyAnimator 和 ObjectAnimator 来实现。 首先,在 XML 布局文件中创建一个 ImageView,并设置其宽度为 0dp,高度为 match_parent。然后,创建一个横向的渐变色 Drawable,并…...
长尾词挖掘,如何选择精准的长尾词优化?
长尾词的挖掘也是一门大学问,它存在多种不同的方法。最常用的方法是把关键词直接放搜索引擎的搜索框搜索和使用长尾词挖掘工具这两种。 以运动水壶为例。 关键词直接放搜索引擎的搜索框搜索,结果如下: 使用长尾词挖掘工具,…...
Python相关环境变量配置和模拟手机app登录
【java环境变量配置】 接着,打开系统->高级系统设置->环境变量。新建一个JAVA_HOME C:\Program Files\Java\jdk1.8.0_201(这里是你的安装路径,最好复制粘贴) 然后在Path下添加 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 然后…...
c++ 11标准模板(STL) std::map(九)
定义于头文件<map> template< class Key, class T, class Compare std::less<Key>, class Allocator std::allocator<std::pair<const Key, T> > > class map;(1)namespace pmr { template <class Key, class T, clas…...
深入探索chatGPT插件:SceneXplain,Wolfram,和AppyPieAIAppBuilder
1. 引言 在这个日益依赖技术的世界中,AI插件已经成为了我们日常生活和工作的重要组成部分。在这篇博客中,我们将深入探索三个强大的AI插件:SceneXplain,Wolfram,和AppyPieAIAppBuilder,了解他们的功能&…...
华为OD机试真题B卷 Java 实现【停车场车辆统计】,附详细解题思路
一、题目描述 特定大小的停车场,数组cars[]表示,其中1表示有车,0表示没车。 车辆大小不一,小车占一个车位(长度1),货车占两个车位(长度2),卡车占三个车位&a…...
第二章:MySQL环境搭建
第二章:MySQL环境搭建 2.1:MySQL的下载、安装、配置 MySQL的四大版本 MySQL Community Server社区版本:开源免费、自由下载,但不提供官方技术支持,适用于大多数普通用户。MySQL Enterprise Edition企业版本࿱…...
生产环境之负载均衡LVS+keepalived方案(2)_LVS介绍
LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,linux内核2.6.X之后的版本默认已集成了LVS模块(内核模块名为:ipvs),实现了基于传输层的请求负载均衡调度方案,LVS支持的工作模…...
【parsel】------- PYTHON爬虫基础4
parsel 这个库可以对 HTML 和 XML 进行解析,并支持使用 XPath 和 CSS Selector 对内容进行提取和修改,同时它还融合了正则表达式提取的功能。 内容目录 from parsel import Selector提取节点提取 class 包含 item-0 的节点 提取文本获取提取到的所有 li…...
MySQL数据库从入门到精通学习第8天(表数据的查询)
表数据的查询 基本查询语句单表查询聚合函数查询多表连接查询子查询合并查询结果定义表和字段的别名使用正则表达式查询 基本查询语句 SELECT 语句非常的强大,是最常用的查询语句。他具有一个固定的格式,如下: SELECT 查询的内容 FROM 数据…...
什么是IPAM?如何使用IPAM来管理IP地址和DHCP?
在计算机网络中,IPAM(IP Address Management)是一种用于管理IP地址和DHCP(Dynamic Host Configuration Protocol)的工具或系统。IPAM旨在简化和集中管理IP地址分配、子网划分和DHCP配置等任务。本文将详细介绍IPAM的概…...
PCIE学习
目录 一、PCIE结构1、层次结构2、数据包TLPDLLP PCIE寄存器配置1、基址寄存器的作用2、基址寄存器的位置 三、PCIE读取数据 一、PCIE结构 1、层次结构 绝大多数的总线或者接口,都是采用分层实现的。PCIe也不例外,它的层次结构如下: PCIe定…...
商业智力,Social焕新|数说故事重磅发布“SocialGPT”,国内首个专注Social领域的商业大模型
AGI时代的到来,市场风云变幻,世界正在经历着一场技术革命的颠覆性洗礼。 2023年6月6日6时,数说故事正式对外发布数说故事“SocialGPT”,国内首个专注Social领域的商业大模型。数说故事“SocialGPT”大家昵称它为“社牛”大模型&a…...
STM32HAL库RS485-ModBus协议控制伺服电机
STM32HAL库RS485-ModBus协议控制伺服电机 一个月前,接手了一个学长的毕设小车,小车采用rs485通信的modbus协议驱动轮毂电机,与往常我学习的pwm控制电机方法大相径庭,在这里以这篇博客记录下该学习过程。 小车主要架构 电机型号 …...
【医学图像】图像分割系列.3 (uncertainty)
介绍几篇使用不确定性引导的医学图像分割论文:UA-MT(MICCAI2019),SSL4MIS(MICCAI2021),UG-MCL(AIIM2022). Uncertainty-aware Self-ensembling Model for Semi-supervise…...
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...
