zoukankan      html  css  js  c++  java
  • 使用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可以正常使用了。

  • 相关阅读:
    字符编码总结
    文件操作总结(2)
    Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017) C. Five Dimensional Points 暴力
    UVA 10048
    UVA 247
    UVA 1151
    UVA 1395
    Codeforces Round #260 (Div. 1) D. Serega and Fun 分块
    Codeforces Beta Round #13 E. Holes 分块
    Codeforces Round #404 (Div. 2) E. Anton and Permutation 分块
  • 原文地址:https://www.cnblogs.com/qzwl/p/12358769.html
Copyright © 2011-2022 走看看