Docker安裝并使用Mysql的詳細(xì)教程(實測可用!)
一個容器=完整Linux
一、Docker安裝Mysql
1、啟動Docker
啟動:sudo systemctl start docker service docker start 停止:systemctl stop docker 重啟:systemctl restart docker
2、查詢mysql
docker search mysql
3、安裝mysql
1.默認(rèn)拉取最新版本mysql
docker pull mysql
2.拉取指定版本mysql_5.7
sudo docker pull mysql:5.7
4、查看鏡像
docker images
5、本地創(chuàng)建掛載目錄-v
二、Docker啟動\使用Mysql
1、啟動mysql容器(創(chuàng)建鏡像實例)
1.指定版本
sudo docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7
2.最新版本
docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:latest
3.命令含義:容器=完整Linux
docker run:在docker中啟動一個容器實例 -d:該容器在后臺運行 -p 3306:3306:容器與主機映射端口為,主機3306,容器3306 --name mysql:容器運行后的名稱 -v /mysqldata/mysql/log:/var/log/mysql:將容器/var/log/mysql目錄下的數(shù)據(jù),備份到主機的 /mysqldata/mysql/log目錄下 -v /mysqldata/mysql/data:/var/lib/mysql:將容器/var/lib/mysql目錄下的數(shù)據(jù),備份到主機的 /mysqldata/mysql/data目錄下 -v /mysqldata/mysql/conf:/etc/mysql:將容器/etc/mysql目錄下的數(shù)據(jù),備份到主機的 mysqldata/mysql/conf目錄下 -e MYSQL_ROOT_PASSWORD=root:設(shè)置當(dāng)前mysql實例的密碼為root mysql:5.7:需要運行的容器名稱以及版本號
2、在var/lib/docker/containers/下查看容器
cd /var/lib/docker/containers/
3、查看mysql進(jìn)程獲取name——mysql名稱
docker ps -a
4、進(jìn)入mysql容器—并登陸mysql
格式:docker exec -it mysql名稱 bash 進(jìn)入mysql容器操作臺命令:docker exec -it mysql bash 登錄mysql命令:mysql -u root -p 輸入密碼:
5、開啟遠(yuǎn)程訪問權(quán)限
命令:use mysql;
命令:select host,user from user;
命令:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
命令:flush privileges;
把root用戶的密碼改成 mysql_native_password 模式,即可遠(yuǎn)程連接
#創(chuàng)建一個賬號-admin,用來進(jìn)行遠(yuǎn)程訪問;
CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
賦予所有權(quán)限給之前創(chuàng)建的賬號:admin
GRANT ALL ON *.* TO 'admin'@'%';
確認(rèn)使用密碼{123456}登錄此賬號{admin}
密碼盡量復(fù)雜,安全性更高。
ALTER USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
刷新權(quán)限
FLUSH PRIVILEGES;
6、查看docker日志
命令:docker logs -f --tail 10 a4dac74d48f7
7、常用命令
查看進(jìn)程
命令:docker ps -a
關(guān)閉docker中mysql容器
命令:docker stop mysqlserver
8、 重啟docker中mysql重啟
重啟docker
命令:systemctl restart docker
關(guān)閉docker
命令:systemctl stop docker
自動重啟容器
sudo docker update mysql --restart=always
9、移除原來的container ID(就是長長的那串?dāng)?shù)字)
docker rm + container ID
10、退出容器
三、Mysql設(shè)置
1、進(jìn)入容器:
命令: docker exec -it mysql bash 命令:mysql -u root -p
2、定位容器位置:
命令:whereis mysql 顯示:mysql: /usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/share/mysql
3、退出容器:
exit
4、找到配置文件夾:一級一級的進(jìn)入
命令:cd /mydata/ 命令:cd mysql/ 命令:cd conf/
5、創(chuàng)建配置文件:cnf
命令:vi my. cnf 命令:i 粘貼內(nèi)容: [client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] init_connect=' SET collation_connection = utf8_unicode_ci ' init_connect=' SET NAMES utf8 ' character-set-server=utf8 collation-server=utf8_unicode_ci skip-character-set-client-handshake skip-name-resolve 按鍵:ESC 命令::wq
6、重啟容器
命令:docker restart mysql 命令:docker exec -it mysql /bin/bash
7、進(jìn)入文件夾
目錄:cd /etc/mysql/ 展示:ls 查看文件:cat my. cnf
四、Mysql外部連接
IP:虛擬機IP地址——云主機地址
端口:
名稱:
密碼:
總結(jié)
到此這篇關(guān)于Docker安裝并使用Mysql的文章就介紹到這了,更多相關(guān)Docker安裝使用Mysql內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 一文學(xué)會docker?安裝mysql的方法
- 詳解docker?制作mysql鏡像并自動安裝腳本
- Docker安裝MySql8并遠(yuǎn)程訪問的實現(xiàn)
- Docker安裝mysql超詳細(xì)步驟記錄
- Docker安裝MySQL并使用Navicat連接的操作方法
- Docker安裝部署Mysql8的過程(以作數(shù)據(jù)持久化)
- docker安裝mysql完美教程(建議收藏!)
- docker安裝mysql、redis鏡像方式
- docker?容器中安裝mysql服務(wù)的方法
- 使用Docker安裝和配置 MySQL 數(shù)據(jù)庫的過程詳解
- Docker安裝MySql遇到的問題解決
相關(guān)文章
Docker部署UI自動化測試環(huán)境的實現(xiàn)步驟
本文主要介紹了Docker部署UI自動化測試環(huán)境的實現(xiàn)步驟,通過Docker可以快速創(chuàng)建、部署和測試腳本,提高測試效率,具有一定的參考價值,感興趣的可以了解一下2023-08-08
SpringCloud基于Docker和Docker-Compose的項目部署過程
本文介紹了如何卸載舊版本Docker、更新系統(tǒng)、安裝Docker及其依賴,并設(shè)置國內(nèi)鏡像源以加快下載速度,詳細(xì)說明了如何安裝Docker Compose、配置鏡像加速器,并展示了如何使用Docker Compose部署SpringCloud項目,提供了更新和重啟容器的方法2024-10-10
解決docker加載新的鏡像后repository和tag名稱都為none的問題
這篇文章主要介紹了解決docker加載新的鏡像后repository和tag名稱都為none的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
docker部署rustdesk遠(yuǎn)程控制服務(wù)器的實現(xiàn)
RustDesk是一款體驗優(yōu)秀的遠(yuǎn)程控制軟件,本文主要介紹了docker部署rustdesk遠(yuǎn)程控制服務(wù)器的實現(xiàn),具有一定的參考價值,感興趣的可以了2024-05-05
CentOS修改docker鏡像存儲位置并進(jìn)行數(shù)據(jù)遷移的操作方法
本文詳細(xì)介紹了在CentOS上修改Docker鏡像存儲位置并進(jìn)行數(shù)據(jù)遷移的步驟,包括停止Docker服務(wù)、創(chuàng)建新的存儲目錄、復(fù)制現(xiàn)有數(shù)據(jù)、修改Docker配置、重啟Docker服務(wù)、驗證配置、清理舊數(shù)據(jù)(可選)以及檢查容器和鏡像,感興趣的朋友一起看看吧2025-01-01
Docker Compose快速部署多容器服務(wù)實戰(zhàn)的實例詳解
使用 Docker Compose 可以輕松、高效的管理容器,它是一個用于定義和運行多容器 Docker 的應(yīng)用程序工具,本文給大家介紹Docker Compose快速部署多容器服務(wù)實戰(zhàn),感興趣的朋友一起看看吧2022-02-02

