如何解決IDEA無(wú)法連接docker中的數(shù)據(jù)庫(kù)的問題
IDEA無(wú)法連接docker中的數(shù)據(jù)庫(kù)
問題最后無(wú)解,或許可以通過抓包發(fā)現(xiàn)原因,但是經(jīng)過兩個(gè)小時(shí)的蠻力測(cè)試,最后證明可能當(dāng)前應(yīng)用的運(yùn)行環(huán)境有關(guān)。
畢竟生成環(huán)境用的就是簡(jiǎn)單的‘123456’。
問題現(xiàn)象
本地idea起springboot的微服務(wù),以com.alibaba.druid.pool.DruidDataSource連接池連接docker中安裝的。
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
url: 'jdbc:mysql://127.0.0.1:3306/user?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&verifyServerCertificate=false'
username: root
password: '123456'
druid:
initialSize: 50
minIdle: 50
maxActive: 300
maxWait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT user()
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
connection-properties: druid.stat.mergeSql:true;druid.stat.slowSqlMillis:5000
相關(guān)版本
連接池
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.20</version>
</dependency>
數(shù)據(jù)庫(kù)
dockerfile: FROM mysql:5.7.25
現(xiàn)象
用以下命令可以修改數(shù)據(jù)庫(kù)密碼
grant all on *.* to root@'%' identified by 't$>9MJ4q' with grant option; flush privileges;
當(dāng)密碼采用
‘123456’或者‘abcdef’時(shí)無(wú)法連接;當(dāng)密碼采訪復(fù)雜的’t$>9MJ4q’時(shí),就可以直接連接成功。
嘗試了各種所謂密碼需要用‘’包裹的方式,都無(wú)效。
本機(jī)連接docker數(shù)據(jù)庫(kù)
首先要保證本機(jī)能訪問虛擬機(jī)的網(wǎng)絡(luò)
例如:可以通過遠(yuǎn)程連接工具連接到虛擬機(jī)
操作步驟
1.進(jìn)入容器
docker exec -it 容器id /bin/bash
1).獲取容器id
docker ps -a

圖中紅框?yàn)槿萜鱥d
2.操作容器mysql
mysql -uroot -p
use mysql
update user set password_expired = "Y"where user="root";
ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY '自己的數(shù)據(jù)庫(kù)密碼';
依次執(zhí)行完成之后,可以通過你的數(shù)據(jù)庫(kù)連接工具連接你docker中的數(shù)據(jù)庫(kù)
工具連接:

cmd終端連接:
mysql -h 192.168.5.130 -uroot -p -P 3306 //192.168.5.130為自己的虛擬機(jī)ip

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker鏡像修改hosts及dockerfile修改hosts文件的實(shí)現(xiàn)方式
這篇文章主要介紹了Docker鏡像修改hosts及dockerfile修改hosts文件的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
不重啟docker進(jìn)程,重新reload加載配置過程
這篇文章主要介紹了不重啟docker進(jìn)程,重新reload加載配置過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-09-09
Docker 部署 RocketMQ 5.1.0 踩坑指南從超時(shí)到 C
最近在項(xiàng)目中引入RocketMQ作為消息中間件,選擇使用Docker容器化部署以簡(jiǎn)化環(huán)境搭建,本文給大家介紹Docker 部署 RocketMQ 5.1.0 踩坑指南從超時(shí)到 Console 連不上的完整解決方案,感興趣的朋友跟隨小編一起看看吧2026-03-03
容器平臺(tái)下部署jumpserver跳板機(jī)全過程
jumpserver是一款堡壘機(jī)/跳板機(jī),用于加強(qiáng)內(nèi)網(wǎng)服務(wù)器的安全管理,本文介紹了jumpserver的安裝、配置和使用方法,包括生成密鑰、創(chuàng)建容器、測(cè)試連接、創(chuàng)建用戶和用戶組、添加資產(chǎn)、用戶授權(quán)和測(cè)試連接等步驟2025-10-10
Docker安裝方法與Docker四種網(wǎng)絡(luò)模式詳解
今天小編就為大家分享一篇關(guān)于Docker安裝方法與Docker四種網(wǎng)絡(luò)模式的詳解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-09-09

