java mysql开启ssl_MySQL8开启ssl加密

news/2025/5/22 5:30:02

1 概述

MySQL从5.7开始默认开启SSL加密功能,进入MySQL控制台后输入status可以查看ssl的状态,出现下图表示在使用ssl:

5a871e8bade52df819827bf140600415.png

另外,ssl加密需要密钥与证书,可以使用openssl手动生成或使用mysql_ssl_rsa_setup自动生成,这里使用了mysql_ssl_rsa_setup.

下面从安装开始.

2 安装(可选)

系统CentOS,直接使用yum安装(编译安装可以看这里),先用list查看一下:

0709e42f8a09d1b25f9cd214d96b6c65.png

这里的版本是8.0.17,不算太旧,就不去官网下载了,直接install:

yum install mysql

yum install mysql-server

好了之后启动服务:

systemctl start mysqld

然后获取临时密码后修改root密码:

grep password /var/log/mysql/mysqld.log

4b2f4dbdeaa0fad69bce4c005e752047.png

这里显示密码为空,直接root登录修改密码:

mysql -u root -p

alter user root@localhost identified by 'xxxxx

78686bda999f1563409d4a529d8af15e.png

3 生成证书与密钥

首先查看有没有开启ssl,MySQL控制台输入

show variables like '%ssl%';

361fc32a0ea74106c4fad68a9f2d259b.png

这里have_ssl显示yes,表示已经开启了,表示本地的使用了ssl连接,如果显示为no,使用MySQL自带的工具即可开启ssl:

mysqld_ssl_rsa_setup

然后默认在/var/lib/mysql下会有几个pem文件(ls查看),说明如下:

名字

描述

ca-key.pem

CA私钥

ca.pem

自签名的CA证书

client-key.pem

连接服务器提供的私钥

client-cert.pem

连接服务器需要提供的证书

server-key.pem

服务器端私钥

server-client.pem

服务器端证书

pulibc_key.pem

密钥对公钥

private_key.pem

密钥对私钥

接着重启服务:

systemctl restart mysqld

4 测试

进入服务器的MySQL控制台,新建两个测试用户,一个使用ssl,一个不使用ssl:

6fb578909d702699cb809489f4acfc44.png

然后在本机上测试,首先测试不需要ssl的用户,输入密码123456后可以直接登录:

dc2f4704275eeb6f72798132b3f5cf7e.png

然后测试需要ssl的用户:

af9a9eb61b3c687a8eab524c6bae364f.png

输入密码123456后登录不了,使用scp从服务器复制CA证书与客户端证书与私钥:

scp username@xxx.xxx.xxx.xxx:/var/lib/mysql/\{ca.pem,client-key.pem,client-cert.pem} .

然后在登录时加上

--ssl-ca=ca.pem

--ssl-cert=client-cert.pem

--ssl-key=client-key.pem

7967651f28b85f725541a93d52510bae.png

登录成功.

文章来源:https://blog.csdn.net/weixin_39797393/article/details/113292075
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://dhexx.cn/news/show-18981.html

相关文章

RocketMQ——广播消费模式与集群消费模式

RocketMQ有两种消费模式:BROADCASTING广播模式,CLUSTERING集群模式,默认的是 集群消费模式。广播消费指的是:一条消息被多个consumer消费,即使这些consumer属于同一个ConsumerGroup,消息也会被ConsumerGroup中的每个Co…

oracle over函数

Oracle over函数 SQL code: sql over的作用及用法RANK ( ) OVER ( [query_partition_clause] order_by_clause )DENSE_RANK ( ) OVER ( [query_partition_clause] order_by_clause )可实现按指定的字段分组排序,对于相同分组字段的结果集进行排序,其中PARTITION BY …

mysql数据库重置root密码是多少_重置mysql数据库root用户的密码 (mysql忘记root密码)...

添加红色部分代码:[rootrhel ~]# vi /etc/my.cnf[mysqld]skip-grant-tablesmax_connections1000datadir/var/lib/mysqlsocket/var/lib/mysql/mysql.sockusermysql保存退出,重启服务。[rootrhel ~]# service mysqld restart停止 MySQL: …

android软键盘弹出隐藏的监听

通过网上搜索关于软键盘的隐藏弹出的监听,有几种方式,其中最有效的方式是在View的Onlayout()里面做文章 具体代码: 将布局视图自定义,重写onlayout()方法,然后在主Activity里面调用接口就可以了…

RocketMq 消息过滤

1 tag过滤,只修改消费者程序的代码 DefaultMQPushConsumer consumer new DefaultMQPushConsumer("CID_EXAMPLE"); consumer.subscribe("TOPIC", "TAGA || TAGB || TAGC"); 消费者将收到包含TAGA或TAGB或TAGB的消息。但限制是一条消…

如何设置真机网络抓包调试

需要将真机和imac ap共享 步骤如下:1.mac->设置中,找到互联网与无限组的共享,设置互联网共享,共享来源连接为:以太网,选择共享给电脑选择wifi。 2.在wifi选项中,选择频段为6,设置…

深入浅出之Smarty模板引擎工作机制(二)

源代码下载地址:深入浅出之Smarty模板引擎工作机制 接下来根据以下的Smarty模板引擎原理流程图开发一个自己的模板引擎用于学习,以便加深理解。 Smarty模板引擎的原理,其实是这么一个过程:  把模板文件编译成php文件&#xff0c…

数据结构练习(07)求1+2+...+n

http://zhedahht.blog.163.com/blog/static/2541117420072915131422/ 这里涉及到了类的静态成员与静态函数,要注意下面几个点: 1. 静态类成员必须初始化,并且要在主函数调用之前。 2. 静态类成员是属于类的,而不是属于某一个对象&…

SpringCloud-Eureka 服务注册与发现,搭建 服务端和客户端

注册中心服务端搭建1 新建springboot项目&#xff0c;添加 Spring-cloud-Discovery》》》》》》》Eureka Server依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifac…

uva1366/LA3530

简单的矩阵上的dp从左上角扫到右下角&#xff0c;dp[i][j][0] 代表在i,j处选A &#xff0c;dp[i][j][1] 代表在i,j处选B.dp[i][j][0]max(dp[i-1][j][1],dp[i-1][j][0])suma[i][j]-suma[i][0];dp[i][j][1]max(dp[i][j-1][1],dp[i][j-1][0])sumb[i][j]-sumb[0][j];View Code 转载…