docker部署的mysql默認(rèn)密碼如何查看
前言
在使用Docker快速部署MySQL容器時(shí),很多人都會(huì)遇到一個(gè)常見問題:MySQL容器默認(rèn)密碼是多少?實(shí)際上,當(dāng)我們啟動(dòng)MySQL容器時(shí),并沒有為root用戶設(shè)置一個(gè)固定的默認(rèn)密碼。在Docker啟動(dòng)MySQL容器后,首次運(yùn)行時(shí)會(huì)生成一個(gè)隨機(jī)密碼,并輸出到容器日志中。接下來,我們就來討論如何找到這個(gè)默認(rèn)密碼。
查看MySQL容器日志
要查看MySQL容器生成的默認(rèn)密碼,可以通過以下步驟:
- 運(yùn)行以下命令啟動(dòng)MySQL容器:
docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:latest
- 使用以下命令查看容器日志:
docker logs mysql-container
- 在日志中,可以找到類似以下內(nèi)容:
GENERATED ROOT PASSWORD: Ax3CPh2uZu&UShOstoob&ohQu
這里的Ax3CPh2uZu&UShOstoob&ohQu就是MySQL生成的隨機(jī)默認(rèn)密碼。
登錄MySQL容器并修改密碼
一旦獲得了默認(rèn)密碼,我們可以使用以下命令登錄MySQL容器,并修改root用戶的密碼:
- 使用以下命令登錄MySQL容器:
docker exec -it mysql-container mysql -u root -p
- 系統(tǒng)會(huì)提示輸入密碼,這里輸入生成的隨機(jī)密碼。
- 成功登錄后,可以使用ALTER語句修改root用戶的密碼:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
將new_password替換為您要設(shè)置的新密碼。
- 修改密碼后,記得刷新權(quán)限:
FLUSH PRIVILEGES;
這樣,您就成功修改了MySQL的root用戶密碼。 總的來說,Docker啟動(dòng)MySQL容器時(shí)會(huì)生成一個(gè)隨機(jī)的默認(rèn)密碼,我們可以通過查看容器日志來獲取這個(gè)密碼,并登錄容器進(jìn)行修改。記得在生產(chǎn)環(huán)境中及時(shí)修改默認(rèn)密碼,以保障數(shù)據(jù)庫(kù)的安全性。
從安全的配置文件中加載數(shù)據(jù)庫(kù)密碼,并連接到MySQL數(shù)據(jù)庫(kù)。請(qǐng)注意,這只是一個(gè)示例,實(shí)際應(yīng)用中請(qǐng)根據(jù)具體情況更改和完善。
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;
import java.io.InputStream;
import java.io.IOException;
public class DatabaseConnection {
public Connection getConnection() {
Properties properties = new Properties();
InputStream input = null;
try {
input = getClass().getResourceAsStream("/config.properties");
properties.load(input);
String url = properties.getProperty("db.url");
String username = properties.getProperty("db.username");
String password = properties.getProperty("db.password");
// 加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)
Class.forName("com.mysql.cj.jdbc.Driver");
// 連接數(shù)據(jù)庫(kù)
Connection connection = DriverManager.getConnection(url, username, password);
return connection;
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
DatabaseConnection dbConnection = new DatabaseConnection();
Connection connection = dbConnection.getConnection();
if (connection != null) {
System.out.println("成功連接到數(shù)據(jù)庫(kù)!");
// 在這里可以執(zhí)行數(shù)據(jù)庫(kù)操作
} else {
System.out.println("連接失?。?);
}
}
}在示例代碼中,假設(shè)數(shù)據(jù)庫(kù)連接信息存儲(chǔ)在config.properties配置文件中,您可以根據(jù)您的實(shí)際環(huán)境和需求修改配置文件,并確保密碼等敏感信息得到安全地存儲(chǔ)和加載。
MySQL是一種流行的開源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),它使用結(jié)構(gòu)化查詢語言(SQL)來管理和操作數(shù)據(jù)庫(kù)。MySQL由瑞典公司MySQL AB開發(fā),后被Sun Microsystems收購(gòu),再后來Sun Microsystems被Oracle收購(gòu)。MySQL廣泛應(yīng)用于Web應(yīng)用程序開發(fā)中,是許多網(wǎng)站和應(yīng)用的首選數(shù)據(jù)庫(kù)系統(tǒng)。 以下是MySQL的一些重要特點(diǎn)和功能:
- 開源性:MySQL是開源軟件,用戶可以免費(fèi)使用、修改和分發(fā)。這使得MySQL成為許多開發(fā)者和組織的首選數(shù)據(jù)庫(kù)解決方案之一。
- 高性能:MySQL是一個(gè)高性能的數(shù)據(jù)庫(kù)管理系統(tǒng),能夠處理大量數(shù)據(jù)和并發(fā)請(qǐng)求。MySQL使用各種技術(shù)和優(yōu)化策略來提高數(shù)據(jù)庫(kù)的性能,例如索引、查詢優(yōu)化等。
- 跨平臺(tái):MySQL支持多種操作系統(tǒng),包括Windows、Linux、macOS等,用戶可以在不同平臺(tái)上部署和運(yùn)行MySQL數(shù)據(jù)庫(kù)。
- 可靠性:MySQL提供了數(shù)據(jù)持久性和可靠性的保證,支持事務(wù)處理和數(shù)據(jù)復(fù)制等功能,確保數(shù)據(jù)的安全和完整性。
- 靈活性:MySQL支持多種存儲(chǔ)引擎,包括InnoDB、MyISAM等,用戶可以根據(jù)不同的需求選擇合適的存儲(chǔ)引擎,以獲得最佳的性能和特性。
- 安全性:MySQL提供了各種安全特性,包括訪問控制、加密傳輸、安全連接等功能,以確保數(shù)據(jù)在傳輸和存儲(chǔ)過程中的安全性。
- 豐富的功能:MySQL提供了豐富的功能和工具,包括存儲(chǔ)過程、觸發(fā)器、視圖、復(fù)制、備份恢復(fù)等功能,滿足各種復(fù)雜的數(shù)據(jù)庫(kù)需求。
總結(jié)
到此這篇關(guān)于docker部署的mysql默認(rèn)密碼如何查看的文章就介紹到這了,更多相關(guān)docker mysql默認(rèn)密碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用Docker容器運(yùn)行Mysql實(shí)戰(zhàn)記錄
這篇文章主要給大家介紹了關(guān)于使用Docker容器運(yùn)行Mysql的相關(guān)資料,助大家更好的理解和學(xué)習(xí)使用docker,感興趣的朋友可以了解下,需要的朋友可以參考下2023-09-09
CentOS 7.x docker使用overlay2存儲(chǔ)方式
這篇文章主要介紹了CentOS 7.x docker使用overlay2存儲(chǔ)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11
使用Docker部署Tomcat的實(shí)現(xiàn)示例
在本地編寫好了Spring項(xiàng)目,為了實(shí)現(xiàn)能夠隨時(shí)地訪問,所以需要將項(xiàng)目部署到服務(wù)器,本文主要介紹了使用Docker部署Tomcat的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-11-11
docker服務(wù)關(guān)停的實(shí)現(xiàn)步驟
在我看來所謂的優(yōu)雅關(guān)閉,就是在系統(tǒng)關(guān)閉時(shí),預(yù)留一些時(shí)間,讓你有機(jī)會(huì)來善后一些事情,本文就來介紹一下docker服務(wù)如何正確關(guān)停,感興趣的可以了解一下2023-10-10
linux下使用Docker Compose部署Spug實(shí)現(xiàn)公網(wǎng)遠(yuǎn)程訪問的過程
這篇文章主要介紹了linux下使用Docker Compose部署Spug實(shí)現(xiàn)公網(wǎng)遠(yuǎn)程訪問,本例演示搭建使用docker compose 方式安裝Spug,并結(jié)合cpolar,需要的朋友可以參考下2023-11-11
Docker搭建PlantUML服務(wù)生成UML圖的實(shí)踐分享
PlantUML 是一款開源的 UML 圖形生成工具,它支持生成類圖、時(shí)序圖、用例圖、活動(dòng)圖等多種類型的 UML 圖,廣泛應(yīng)用于軟件設(shè)計(jì)、文檔編寫以及團(tuán)隊(duì)溝通中,本文給大家介紹了Docker搭建PlantUML服務(wù)生成UML圖的最佳實(shí)踐,需要的朋友可以參考下2025-03-03
Docker實(shí)現(xiàn)導(dǎo)入導(dǎo)出鏡像(Image)文件的代碼示例
在 Docker 中,鏡像(Image)是容器的基礎(chǔ),包含了應(yīng)用程序運(yùn)行所需的所有文件系統(tǒng)和配置,有時(shí),我們需要將 Docker 鏡像導(dǎo)出到文件中,以便在其他地方使用,以下將詳細(xì)介紹如何使用 Docker 導(dǎo)入導(dǎo)出鏡像文件,需要的朋友可以參考下2024-08-08

