安装mysql8.0.11版本,并使用mybatis进行连接mysql遇到的问题
之前Centos遠程服務器使用mysql的版本是5.1.32,今天重新安裝了mysql的最先版本8.0.11,安裝過程出現了一些問題。
?
1、第一個錯誤:1251異常。
(1)安裝完mysql8.0.11之后,使用Navicat遠程連接Mysql報1251錯誤,但是ip,端口,賬號密碼都是正確的。而且在遠程服務器上,直接使用shell命令,用賬號密碼登陸卻可以登陸。
(2)出現這個原因是mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之后,加密規則是caching_sha2_password。
(3)解決問題方法有兩種,一種是升級navicat驅動,一種是把mysql用戶登錄密碼加密規則還原成mysql_native_password.。
現在介紹的是第二種方法的步驟:
mysql -uroot -p #進入服務器中,執行這條命令,再輸入密碼,即可進入mysql數據庫 mysql>use mysql; mysql>ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密規則 mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用戶的密碼 mysql>FLUSH PRIVILEGES; #刷新權限重新連接,問題就解決了。
?
?
2、第二個錯誤:使用mybatis連接mysql,拋出異常錯誤。
(1)異常錯誤:Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
(2)錯誤原因:數據庫連接驅動的方式不適用。
(3)解決方法:使用最新的mysql連接驅動,即將`com.mysql.jdbc.Driver'改為`com.mysql.cj.jdbc.Driver'
以前版本使用的連接驅動:
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://xxx.xx.xx.xxx:3306/db?characterEncoding=utf-8 jdbc.username=root jdbc.password=admin解決后的數據庫連接驅動:
jdbc.driver=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://xxx.xx.xx.xxx:3306/db?characterEncoding=utf-8 jdbc.username=root jdbc.password=admin?
3、第三個警告:Establishing SSL connection without server's identity verification is not recommended
(1)警告信息: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.
(2)警告原因:這是因為Mysql在高版本需要指明是否進行SSL連接
(3)解決方法:雖然不修改也不影響使用,但是如果想要不出現警告,可以在mysql連接字符串url中加入useSSL=false或者useSSL=true即可。如下
jdbc.url=jdbc:mysql://xxx.xxx.xx.xxx:3306/db?characterEncoding=utf-8&useSSL=false?
總結
以上是生活随笔為你收集整理的安装mysql8.0.11版本,并使用mybatis进行连接mysql遇到的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java虚拟机:JVM 主要组成部分与内
- 下一篇: Docker(一):Docker的安装与