使用docker創建MySQL容器,並在springboot中使用


最近在看網上找了個springboot的項目試試,在項目中需要的MySQL版本是5.7,但是本機的MySQL只有5.5。因此想着在我的服務器上跑一個MySQL:5.7的容器解決這一問題,但是在實際操作過程中出現了一些問題,在這做下記錄。

一、MySQL:5.7容器的創建

1.拉取鏡像

1 docker pull mysql:5.7

2.查看鏡像

1 docker images

3.創建與啟動容器

1 docker run -di --name=mysql5.7 -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

4.查看啟動的容器

1 docker ps

5.查看容器(包括關閉的容器)

1 docker ps -a

二、出現的問題

1.創建完容器后,以守護式方式創建完容器后發現MySQL容器幾秒鍾后自己關閉了。

在網上查后發現可能是虛擬內存不夠。使用free后發現swap虛擬內存為0,應該是虛擬內存未啟用。

啟用swap:

1 dd if=/dev/zero of=/swapfile bs=1M count=1024
2 
3 mkswap /swapfile
4 
5 swapon /swapfile

再次free發現swap有數值了

 再次啟動容器后發現容器不會自己關閉了,那么問題解決了。

2.在springboot中連接MySQL容器報錯

 在網上搜索解決辦法大部分都說是權限的問題,但是添加權限后還是沒用。

后來想到可能是配置文件的問題,因為我將服務器的33306端口映射到了MySQL的3306端口,而在配置文件中沒有填寫MySQL端口的信息,那么用的應該是MySQL默認的3306端口。

在配置文件中加入33306端口配置信息,springboot可以正常使用了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM