docker安装mysql、redis、nginx、elasticSearch 服务(beta)

docker安装mysql、redis、nginx、elasticSearch 服务

建议:使用任何容器参考 dockerhub官方网站 + 搜索引擎(百度 google)

安装mysql

  1. 拉取mysql镜像到本地
    docker pull mysql:tag (tag不加默认最新版本)
    docker pull mysql:8.0.20

  2. 运行mysql服务

  • docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:tag --没有暴露外部端口外部不能连接
  • docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:tag --没有暴露外部端口
  • docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:8.0.20 --restart=always --没有暴露外部端口,总是运行
  • docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d --restart=always -v /root/data:/var/lib/mysql mysql:8.0.20 --数据卷持久化数据到宿主机

-e: enviroment 环境
-d: 后台运行
--restart=always : 只要docker引擎启动,容器会自动重启

docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:8.0.20 --restart=always

docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d --restart=always -v /root/data:/var/lib/mysql mysql:8.0.20

  1. 进入mysql容器
    docker exec -it 容器名称|容器id bash
    mysql -u root -p
  1. 外部查看mysql日志
    docker logs 容器名称|容器id

  2. 通过其他客户端访问 如在window系统|macos系统使用客户端工具访问

  3. 执行sql文件到mysql中 docker exec -i mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /root/xxx.sql

docker 运行mysql容器数据备份

在使用mysql容器时数据卷虽然能备份数据

注意: 数据卷将数据库底层文件系统进行的备份 不利于数据迁移和备份 推荐使用sql文件形式备份数据

在mysql导出sql文件来备份数据

  1. 利用mysql官方提供命令 mysqldump
  • docker exec mysql|容器id sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /root/all-databases.sql   ----导出全部数据
    >代表要把信息输出到哪个文件
  • docker exec mysql sh -c 'exec mysqldump --databases 库名 -uroot -p"$MYSQL_ROOT_PASSWORD"' > /root/all-databases.sql  ----导出指定库数据
  • docker exec mysql sh -c 'exec mysqldump --no-data --databases 库表 -uroot -p"$MYSQL_ROOT_PASSWORD"' > /root/all-databases.sql  ----导出指定库数据不要数据
  1. 使用navicat提供数据备份
    直接在对应库中选择备份的表即可,导出即可

执行sql文件到mysql中

docker exec -i mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /root/xxx.sql

安装Redis服务

相关推荐
凤山老林43 分钟前
04-Java JDK, JRE和JVM
java·开发语言·jvm
camellias_7 小时前
【无标题】
java·tomcat
咸鱼2.07 小时前
【java入门到放弃】需要背诵
java·开发语言
椰猫子7 小时前
Java:异常(exception)
java·开发语言
GreenTea8 小时前
一文搞懂Harness Engineering与Meta-Harness
前端·人工智能·后端
win x8 小时前
Redis 使用~如何在Java中连接使用redis
java·数据库·redis
星晨雪海9 小时前
基于 @Resource 的支付 Service 多实现类完整示例
java·开发语言
阿维的博客日记9 小时前
什么是逃逸分析
java·juc
Ricky_Theseus9 小时前
C++右值引用
java·开发语言·c++
Rick19939 小时前
Java内存参数解析
java·开发语言·jvm