Docker中Mysql容器無法停止無法刪除問題
Mysql容器無法停止無法刪除問題
問題
mysql容器如法停止,無法刪除,也無法連接。docker stop,docker kill等命令都無效。
處理辦法:
1.停止所有的容器
docker stop 容器Id
2.強制移除此容器
docker rm -f 容器id
3.清理此容器的網(wǎng)絡(luò)占用
- 格式:docker network disconnect --force 網(wǎng)絡(luò)模式 容器名稱
- 示例:docker network disconnect --force bridge 容器名
4.簡查是否還有同名容器占用
- 格式:docker network inspect 網(wǎng)絡(luò)模式
- 示例:docker network inspect bridge
5.重新構(gòu)建容器
示例1
docker run --name mysql --restart=always \ ? ? -v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf \ ? ? -v /home/mysql/data:/var/lib/mysql \ ? ? -p 3317:3306 \ ? ? -e MYSQL_ROOT_PASSWORD="root" \ ? ? -e TZ=Asia/Shanghai \?
示例2
docker run --name mysql? -v /data/mysql-data:/var/lib/mysql? -p 33306:3306? -e MYSQL_ROOT_PASSWORD=guest-root? mysql:latest
啟動報錯:
Different lower_case_table_names settings for server ('0') and data dictiona
原因
mysql8.x版本修改區(qū)分的大小寫的配置
解決方法
1、在my.cnf配置文件[mysqld]下添加
[mysqld] ? lower_case_table_names=1
2、docker啟動mysql修改配置 添加 --lower-case-table-names=1 :
docker run --name mysql --restart=always \ ? ? -v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf \ ? ? -v /home/mysql/data:/var/lib/mysql \ ? ? -p 3317:3306 \ ? ? -e MYSQL_ROOT_PASSWORD="root" \ ? ? -e TZ=Asia/Shanghai \ ? ? -d mysql:8.0 --lower-case-table-names=1
Docker中Mysql的使用
拉取MySQL鏡像
# docker pull mysql:8.0.4 docker pull mysql:5.7.5
創(chuàng)建可掛載磁盤目錄
mkdir -p /docker/mysql chmod -R 777 /docker/mysql
運行MySQL容器
docker run --name mysql \ -p 3306:3306 \ -v /docker/mysql/data:/var/lib/mysql \ -v /docker/mysql/log:/var/log/mysql \ -v /docker/mysql/conf.d:/etc/mysql/conf.d \ -e MYSQL_ROOT_PASSWORD=123456 \ -d mysql:5.7.5
查看docker容器的運行狀態(tài):
docker ps # 查看運行中的容器 docker ps -a # 查看所有容器的狀態(tài)
停止容器
docker stop CONTAINER ID
運行已經(jīng)停止的容器
docker start CONTAINER ID
刪除容器
docker rm CONTAINER ID
強制刪除運行中的容器
docker rm CONTAINER ID -f
刪除所有已停止的容器(display all container ID)
docker rm $(docker ps -a -q)

查看鏡像詳情
docker image inspect IMAGE [IMAGE..]

查看歷史鏡像
docker image history 【OPTIONS】IMAGE docker history 【OPTIONS】IMAGE
修改鏡像名稱和標(biāo)簽
docker tag source_IMAGE【:TAG】 TARGET_IMAGE【:TAG】
進(jìn)入MySQL容器
docker exec -it mysql /bin/bash
使用MySQL命令行工具連接MySQL
mysql -h localhost -u root -p
輸入密碼
修改root賬戶的認(rèn)證模式
Alter USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
驗證外部連接
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Centos Docker1.12 遠(yuǎn)程Rest api訪問的配置方法
這篇文章主要介紹了Centos Docker1.12 遠(yuǎn)程Rest api訪問的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-01-01
docker在win10家庭版下構(gòu)建laravel開發(fā)環(huán)境的教程詳解
這篇文章主要介紹了docker在win10家庭版下構(gòu)建laravel開發(fā)環(huán)境,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06
docker?compose部署mongodb?分片集群的操作方法
分片機制(Sharding)是MongoDB中用于處理大規(guī)模數(shù)據(jù)集和高負(fù)載應(yīng)用的一種數(shù)據(jù)分布策略,通過將數(shù)據(jù)均勻分布在多個服務(wù)器上,分片技術(shù)能夠提高應(yīng)用的可擴展性和性能,本文給大家介紹docker?compose部署mongodb?分片集群的相關(guān)操作,感興趣的朋友一起看看吧2024-10-10
Docker系列學(xué)習(xí)之Swarm mode管理節(jié)點常用命令詳解
這篇文章主要為大家介紹了Docker系列學(xué)習(xí)之Swarm mode管理節(jié)點常用命令詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10

