- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
docker 修改mysql密碼
在 Docker 中,有多種方法可以有效地修改 MySQL 密碼。以下是幾種常用的方法,每種方法都有其特定的使用場景和優缺點
方法 1: 使用 MySQL Shell
1.進入 MySQL 容器: 首先,你需要進入正在運行的 MySQL 容器。可以使用以下命令通過 docker exec 進入容器的命令行界面:
docker exec -it <mysql-container-name> mysql -u root -p
在這里,<mysql-container-name> 是你的 MySQL 容器名稱。運行該命令后,系統會提示你輸入當前的 root 密碼。如果密碼正確,你將進入 MySQL 的命令行界面。
2.修改密碼: 一旦你進入了 MySQL shell,可以使用以下 SQL 命令來修改 root 用戶的密碼(請將 newpassword 替換為你希望設置的新密碼):
ALTER USER 'root'@'%' IDENTIFIED BY 'newpassword';
FLUSH PRIVILEGES;
這里的 ALTER USER 命令用于更新指定用戶的密碼。'root'@'%' 表示所有主機上的 root 用戶。如果你想要修改其他用戶的密碼,可以替換成相應的用戶名和主機。
方法 2: 使用環境變量重新啟動容器
如果你想要在創建新的 MySQL 容器時設置初始密碼,可以使用環境變量:
docker run --name mymysql -e MYSQL_ROOT_PASSWORD=newpassword -d mysql:latest
在這個命令中,--name mymysql 用于指定容器名稱,-e MYSQL_ROOT_PASSWORD=newpassword 用于設置 root 用戶的密碼為 newpassword。使用 -d 參數可以讓容器在后臺運行。需要注意的是,這個命令將會創建一個新的 MySQL 實例,而不是修改現有的實例。
方法 3: 使用 SQL 文件
如果你已經有一個 SQL 文件,可以在容器啟動時自動執行其中的命令,從而設置或修改密碼。這種方法適合批量初始化多個數據庫實例或執行復雜的初始化邏輯。
1.創建一個 SQL 文件(例如 init.sql)并添加以下內容:
ALTER USER 'root'@'%' IDENTIFIED BY 'newpassword';
FLUSH PRIVILEGES;
2.啟動 MySQL 容器并掛載該文件:
docker run --name mymysql -v /path/on/host/init.sql:/docker-entrypoint-initdb.d/init.sql -e MYSQL_ROOT_PASSWORD=oldpassword -d mysql:latest
這將在容器啟動時執行 init.sql 中的命令。
在這個命令中,-v /path/on/host/init.sql:/docker-entrypoint-initdb.d/init.sql 表示將本地的 init.sql 文件掛載到容器內的指定路徑。這樣,在容器啟動時,MySQL 會自動執行 init.sql 文件中的命令,完成密碼的修改。
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP