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服务

相关推荐
添尹18 分钟前
Go语言基础之基本数据类型
开发语言·后端·golang
fffcccc11121 小时前
关于解决Eino不兼容音音频输入的问题
后端
Leo8991 小时前
go从零单排之方法
后端
毕设源码-赖学姐1 小时前
【开题答辩全过程】以 鸡场养殖管理系统为例,包含答辩的问题和答案
java
sheji34161 小时前
【开题答辩全过程】以 高校自习室智能化管理系统为例,包含答辩的问题和答案
java
wefly20171 小时前
告别本地环境!m3u8live.cn一键实现 M3U8 链接预览与调试
前端·后端·python·音视频·m3u8·前端开发工具
yaoxin5211231 小时前
358. Java IO API - 使用 relativize() 创建路径之间的相对关系
java·linux·python
庞轩px1 小时前
HotSpot详解——符号引用、句柄池、直接指针的终极解密
java·jvm·设计模式·内存·虚拟机·引用·klass
難釋懷2 小时前
初识Caffeine
java·缓存
big_rabbit05022 小时前
java面试题整理
java·开发语言