A differenza del tuo tipico browser web, uno strumento a riga di comando come mysql
non ha un elenco integrato di autorità di certificazione. I browser sono dotati di un elenco integrato di autorità di certificazione e tu ti fidi implicitamente di loro (indipendentemente dal fatto che tu lo sappia o meno).
Quando usi mysql
per accedere a un server MySQL che supporta la crittografia, quel server ti presenterà la parte pubblica di un certificato. Per completare l'handshake sicuro, il client deve verificare che il certificato del server sia firmato da un'autorità di certificazione attendibile. In caso contrario, dovrà dire "ehi, questo sembra un certificato ben formato, ma non ho mai sentito del ca che lo ha firmato".
Per Hibernate / JDBC / TLS, un po' di lavoro sui motori di ricerca fa emergere alcuni suggerimenti utili. Si tratta di impostare le proprietà giuste nella tua configurazione.
http://razorsql.com/articles/mysql_ssl_jdbc.html
Come posso configurare Hibernate per utilizzare SSL per comunicare con il server DB?