零、更換Docker鏡像源
因為國內現在封鎖了Docker默認拉取鏡像的站點(DockerHub),而且國內大部分Docker鏡像站已全部下線,導致現在很多朋友在拉取鏡像的時候會出現無法拉取的現象,這時候就需要進行更換Docker鏡像源。
可用鏡像源-參考地址:最新國內可用的Docker鏡像源分享(包含自建) - 大理魚兒的小破站
創建?vi /etc/docker/daemon.json 文件;內容
sudo tee /etc/docker/daemon.json <<EOF
{"registry-mirrors": ["https://docker.domys.cc","https://hub.domys.cc","https://docker.1ms.run", "https://docker.xuanyuan.me"]
}
EOF
?保存文件后,重啟一下Docker服務 ,systemctl restart docker 。
輸入命令:docker?info,看到Registry Mirrors有相關信息就是添加成功了,然后就可以試著拉取鏡像了。
一、拉取Mysql鏡像
docker pull mysql:5.7 # 拉取鏡像
驗證是否成功拉取,運行下面的命令,查看是否有mysql5.7的鏡像
docker images
二、創建容器并啟動
docker run --name mysql5.7-dev -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
驗證是否成功啟動mysql服務,運行docker ps
命令來查看
docker ps
docker start mysql5.7-test #啟動mysql容器
docker stop mysql5.7-test #停止mysql容器
三、Docker進入容器連接MySQL
執行下面命令,連接mysql容器
docker exec -it mysql-dev /bin/bash
?執行下面命令,登陸mysql數據庫
mysql -uroot -p #密碼 123456
show databases; # 顯示所有的庫
use mysql; #選擇mysql庫
show tables; #顯示mysql庫里的所有表
select host,user from user; #查詢所有用戶及主機
exit # 退出mysql
?
關鍵操作點:?
1)創建一個新用戶
mysql> CREATE USER 'admin'@'%' IDENTIFIED BY 'admin123';
Query OK, 0 rows affected (0.00 sec)
2)?給新用戶授權
mysql> GRANT ALL PRIVILEGES ON *.* TO admin@'%';
Query OK, 0 rows affected (0.00 sec)mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
3)修改root、admin用戶的host為%(修改了才可以遠程連接)
mysql> update user set host = '%' where user = 'admin';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
四、使用Navicat連接MySQL
使用MySQL的客戶端來連接數據庫,測試是否成功創建了鏡像及用戶,這里選擇的是navicat
連接
五、連接MySQL的常見問題
可參見另外一篇:【mysql】linux上安裝mysql服務的操作(記錄)