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

相关推荐
IT_陈寒3 分钟前
JavaScript性能优化:5个V8引擎隐藏技巧让你的代码提速50%
前端·人工智能·后端
精神病不行计算机不上班10 分钟前
[Java Web]在IDEA中完整实现Servlet的示例
java·servlet·tomcat·html·intellij-idea·web
chushiyunen12 分钟前
javadoc规范、idea生成javadoc等
java·ide
小羊学伽瓦16 分钟前
ThreadLocal
java·jvm·算法
Tjohn921 分钟前
Java环境配置(JDK8环境变量配置)补充
java·开发语言
摇摆的含羞草22 分钟前
Java加解密相关的各种名词的含义,各种分类的算法及特点
java·开发语言·算法
huohuopro25 分钟前
java金额转换,将数字金额转换为7位大写
java·开发语言
lionliu051931 分钟前
数据库的乐观锁和悲观锁的区别
java·数据库·oracle
快乐就去敲代码@!32 分钟前
Boot Cache Star ⭐(高性能两级缓存系统)
spring boot·redis·后端·缓存·docker·压力测试