关于useSSL=false和true的区别及说明

目录
  • useSSL=false和true的区别
  • useSSL=false 连接配置详解
    • SSL协议提供服务主要
    • 当前支持SSL协议两层
    • 解决方案如下

useSSL=false和true的区别

SSL(Secure Sockets Layer 安全套接字协议),在mysql进行连接的时候,如果mysql的版本是5.7之后的版本必须要加上useSSL=false,mysql5.7以及之前的版本则不用进行添加useSSL=false,会默认为false,一般情况下都是使用useSSL=false,尤其是在将项目部署到linux上时,一定要使用useSSL=false!!!,useSSL=true是进行安全验证,一般通过证书或者令牌什么的,useSSL=false就是通过账号密码进行连接,通常使用useSSL=false!!!

useSSL=false 连接配置详解

web应用中连接mysql数据库时后台会出现这样的提示:

Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+,
5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn’t set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to ‘false’. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

原因是MySQL在高版本需要指明是否进行SSL连接。

SSL协议提供服务主要

1)认证用户服务器,确保数据发送到正确的服务器;  

2)加密数据,防止数据传输途中被窃取使用;

3)维护数据完整性,验证数据在传输过程中是否丢失;

当前支持SSL协议两层

  • SSL记录协议(SSL Record Protocol):建立靠传输协议(TCP)高层协议提供数据封装、压缩、加密等基本功能支持
  • SSL握手协议(SSL Handshake Protocol):建立SSL记录协议用于实际数据传输始前通讯双进行身份认证、协商加密算法、交换加密密钥等。

解决方案如下

在mysql连接字符串url中加入ssl=true或者false即可,如下所示。

url=jdbc:mysql://127.0.0.1:3306/framework?useSSL=false

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 连接mysql报错——没有设置“usessl=false”的问题

    目录 报错信息 解决办法 添加前 添加后 附上Configuration.xml代码 报错信息 Wed Mar 13 17:08:37 CST 2019 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must

  • 关于useSSL=false和true的区别及说明

    目录 useSSL=false和true的区别 useSSL=false 连接配置详解 SSL协议提供服务主要 当前支持SSL协议两层 解决方案如下 useSSL=false和true的区别 SSL(Secure Sockets Layer 安全套接字协议),在mysql进行连接的时候,如果mysql的版本是5.7之后的版本必须要加上useSSL=false,mysql5.7以及之前的版本则不用进行添加useSSL=false,会默认为false,一般情况下都是使用useSSL=false,尤其

  • Java中for(;;)和while(true)的区别

    目录 1.问题来源 2.比较 2.1 测试代码for 2.2 测试代码while 3.结论 1.问题来源 在阅读Java的JDK源码时,发现大部分写源码的大佬多采用for(;;)的方式来死循环,比如说AQS(AbstractQueuedSynchronizer)中大量使用的自旋的方式获取共享状态. /** * 通过"死循环"的方式来正确的添加节点 */ private Node enq(final Node node) { // 不断循环,直至CAS插入节点成功 for (;;) {

  • MySQL中的布尔值,怎么存储false或true

    MySQL布尔值,存储false或true 简明说,数据库存储的布尔值是0和1,相当于一个字节的INT型整数 具体操作 如果是可视化界面,可以直接选择Boolean,长度设置为1.其最终显示的效果等价于TINYINT(1) 所以,zero == false:nonzero == true MySQL数据库存储布尔值 在Java编程中,我们经常会遇到将boolean值写入到mysql数据库的情况.但是,mysql数据库是没有boolean类型的,它的boolean值是用数字0和1来表示的. 下面,

  • java 中 request.getSession(true、false、null)的区别

    java 中 request.getSession(true/false/null)的区别 一.需求原因 现实中我们经常会遇到以下3中用法: HttpSession session = request.getSession(); HttpSession session = request.getSession(true); HttpSession session = request.getSession(false); 二.区别 1.      Servlet官方文档说: public Http

  • 详谈python中subprocess shell=False与shell=True的区别

    shell=True参数会让subprocess.call接受字符串类型的变量作为命令,并调用shell去执行这个字符串,当shell=False是,subprocess.call只接受数组变量作为命令,并将数组的第一个元素作为命令,剩下的全部作为该命令的参数. 举个例子来说明 from subprocess import call import shlex cmd = "cat test.txt; rm test.txt" call(cmd, shell=True) 上述脚本中,sh

  • mybatis中${}和#{}取值的区别分析

    mybatis作为一个轻量级的ORM框架,应用广泛,其上手使用也比较简单:一个成熟的框架,必然有精巧的设计,值得学习. 在使用mybatis框架时,在sql语句中获取传入的参数有如下两种方式: ${paramName} #{paramName} 那如何理解这两种传参方式呢?如下带你走近背后的奥义. 先来回顾下原生Jdbc查询: public static void main(String[] args) throws Exception { // sql语句 String sql = "sele

  • 解决Springboot2.1.x配置Activiti7单独数据源问题

    1|1简介 最近基于最新的Activiti7配置了SpringBoot2. 简单上手使用了一番.发现市面上解决Activiti7的教程很少,采坑也比较多,在Activiti6配置数据源和Activiti7有所区别,基于Activiti6在Activiti7里是无法正常使用的.接下来让我们看下区别. 1|2问题 Activiti6多数据源配置 6的配置比较简单点. 先加入配置: # activiti 数据源 spring.datasource.activiti.driver=com.mysql.j

  • FluentMybatis快速入门详细教程

    使用fluent mybatis可以不用写具体的xml文件,通过java api可以构造出比较复杂的业务sql语句,做到代码逻辑和sql逻辑的合一. 不再需要在Dao中组装查询或更新操作,在xml或mapper中再组装参数. 对底层数据表关联关系的处理,我们总是绕不开什么一对一,一对多,多对多这里比较烦人的关系. 业界优秀的ORM框架也都给出了自己的答案,简单来说就以下几种方式: hibernate和JPA对开发基本屏蔽了底层数据的处理,只需要在model层设置数据级联关系即可.但这种设置也往往

  • 初学者,Spring快速入门

    目录 1.spring 1.1.优点 1.2.缺点 1.3.Spring框架的组成结构图 1.3.1.核心容器 1.3.2.AOP 和设备支持 1.3.3.数据访问与集成 1.3.4.Web 1.3.5.消息(Messaging) 1.3.6.Test 2.Spring核心ioc 2.1.ioc容器 2.1.1.BeanFactory 容器 2.1.2. ApplicationContext 容器 2.2.使用ioc容器 2.2.1.beans.xml 2.2.2.pojo.User 2.2.3

随机推荐