Docker安裝Mysql及常用命令

首先安裝Linux的內核版本必須3.1以上,才能安裝Docker,不建議去升級內核版本(我遇到很多坑),直接官網下載Linux重新安裝虛擬機。

1.常用命令(以下載mysql爲例)

1、搜索鏡像
[root@localhost ~]# docker search mysql
2、拉取鏡像
[root@localhost ~]# docker pull mysql
3、根據鏡像啓動容器 (run 之後纔會放在容器中,之後可以直接start)
docker run ‐‐name mytomcat ‐d mysql:latest
4、docker ps  
查看運行中的容器
5、 停止運行中的容器
docker stop  容器的id
6、查看所有的容器
docker ps ‐a
7、啓動容器
docker start 容器id
8、刪除一個容器
 docker rm 容器id
9、啓動一個做了端口映射的mysql
[root@localhost ~]# docker run ‐d ‐p 3306:3306 mysql
‐d:後臺運行
‐p: 將主機的端口映射到容器的一個端口    主機端口:容器內部的端口
 
10、爲了演示簡單關閉了linux的防火牆(這樣本地電腦才能遠程訪問)
service firewalld status ;查看防火牆狀態
service firewalld stop:關閉防火牆

11、創建一個帶有數據登錄密碼的容器

[root@localhost ~]# docker run ‐‐name mysql01 ‐e MYSQL_ROOT_PASSWORD=123456 ‐d mysql

12、把主機的/conf/mysql文件夾掛載到 mysqldocker容器的/etc/mysql/conf.d文件夾裏面
改mysql的配置文件就只需要把mysql配置文件放在自定義的文件夾下(/conf/mysql)

docker run ‐‐name mysql03 ‐v /conf/mysql:/etc/mysql/conf.d ‐e MYSQL_ROOT_PASSWORD=my‐secret‐pw 
‐d mysql:tag

注意1

在第12點中,把主機的/conf/mysql文件夾掛載到 mysqldocker容器的/etc/mysql/conf.d文件夾裏面可能會報錯,只需重建docker就行

systemctl restart docker 重新啓動

注意2

如果拉取安裝的Mysql鏡像是最新版本或者是8以上版本,雖然已經做了端口映射,密碼設置,但是用本地數據庫可視化工具Navicat還是無法訪問連接,並且報錯如下:

client does not support authentication protocol......

解決辦法:

linux容器通過docker進入mysql中:

docker exec -it 容器名(mysql02 )bash

mysql -u root -p    

修改數據庫密碼:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章