SpringBoot啓東時紅色警告:javascript
Mon Jun 04 00:53:48 CST 2018 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 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
html
翻譯:java
請注意:不建議在沒有服務器身份驗證的狀況下創建SSL鏈接。根據MySQL 5.5.45+、5.6.26+和5.7.6+的要求,若是不設置顯式選項,則必須創建默認的SSL鏈接。您須要經過設置useSSL=false顯式地禁用SSL,或者設置useSSL=true併爲服務器證書驗證提供信任存儲mysql
那問題來了,SSL是什麼?算法
SSL(Secure Socket Layer:安全套接字層)利用數據加密、身份驗證和消息完整性驗證機制,爲基於TCP等可靠鏈接的應用層協議提供安全性保證。sql
SSL協議提供的功能主要有:數據庫
一、 數據傳輸的機密性:利用對稱密鑰算法對傳輸的數據進行加密。
2.、身份驗證機制:基於證書利用數字簽名方法對服務器和客戶端進行身份驗證,其中客戶端的身份驗證是可選的。
三、 消息完整性驗證:消息傳輸過程當中使用MAC算法來檢驗消息的完整性。安全
若是用戶的傳輸不是經過SSL的方式,那麼其在網絡中數據都是以明文進行傳輸的,而這給別有用心的人帶來了可乘之機。因此,如今不少大型網站都開啓了SSL功能。一樣地,在咱們數據庫方面,若是客戶端鏈接服務器獲取數據不是使用SSL鏈接,那麼在傳輸過程當中,數據就有可能被竊取。服務器
這裏我推薦閱讀這篇博客:https://www.cnblogs.com/mysql-dba/p/7061300.html網絡
咱們能夠去查看咱們的mysql是否開啓了SSL:
mysql> show global variables like '%ssl%'; +---------------+----------+ | Variable_name | Value | +---------------+----------+ | have_openssl | DISABLED | | have_ssl | DISABLED | | ssl_ca | | | ssl_capath | | | ssl_cert | | | ssl_cipher | | | ssl_crl | | | ssl_crlpath | | | ssl_key | | +---------------+----------+ 9 rows in set
jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
再次推薦你們閱讀這篇博客:https://www.cnblogs.com/mysql-dba/p/7061300.html
深刻了解SSL