首页 > 数据库 >mysql容器使用

mysql容器使用

时间:2024-09-19 20:04:25浏览次数:9  
标签:容器 -- 使用 some mysql MYSQL docker PASSWORD

一、镜像使用的部分介绍

  1. 创建一个简单的mysql容器
    docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
  2. 宿主机没有安装msql的情况下,可以通过docker命令连接mysql
  • 通过容器连接远程mysql
    docker run -it --rm mysql mysql -hsome.mysql.host -usome-mysql-user -p
  • 通过命令行连接本地mysql容器(--network docker网络,同一网络下的容器可以通过容器名称通信)
    docker run -it --network some-network --rm mysql mysql -hsome-mysql -uexample-user -p
  1. 进入容器内部
    docker exec -it some-mysql bash
  2. 通过docker查看容器运行日志
    docker logs some-mysql
  3. 使用自定义mysql配置文件
    $ docker run --name some-mysql -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
  4. 环境变量
  • MYSQL_ROOT_PASSWORD:root用户密码
  • MYSQL_DATABASE:在映像启动时创建的数据库的名称,如果创建了新用户,该用户将被授予这个数据库的超级用户访问权限
  • MYSQL_USER,MYSQL_PASSWORD:创建新用户并设置该用户的密码
  • MYSQL_ALLOW_EMPTY_PASSWORD:注意,这个一般不使用,如果值为yes将允许使用 root 用户的空白密码启动容器,太危险了⚠️
  • MYSQL_RANDOM_ROOT_PASSWORD:如果值为yes,将为root用户生成随机初始密码(使用pwgen)并打印到屏幕上
  • MYSQL_ONETIME_PASSWORD:一次性密码,首次登录要求修改密码
  1. 数据持久化,/my/own/datadir替换成你本地目录或者volume
    docker run --name some-mysql -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
  2. 备份数据
    docker exec some-mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /some/path/on/your/host/all-databases.sql
  3. 恢复数据
    docker exec -i some-mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /some/path/on/your/host/all-databases.sql

二、使用

  1. 创建数据卷
  • docker volume create mysql_data:data用于数据持久化,一般配这个就够了
  • docker volume create mysql_conf:conf配置文件,如果需要使用自定义配置文件的话
  1. 创建mysql容器:
    docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=YourPassWord -v mysql_data:/var/lib/mysql -v mysql_conf:/etc/mysql/conf.d mysql:latest
  2. 自动运行
  • 创建时加上参数:--restart=always
  • 在现有容器上加自动运行:
    docker container update --restart=always mysql

标签:容器,--,使用,some,mysql,MYSQL,docker,PASSWORD
From: https://www.cnblogs.com/halafightman/p/18420941

相关文章

  • 如何使用Open UI异地远程办公设计前端网页无需公网IP
    文章目录前言1.本地部署OpenUI1.1安装Git、Python、pip1.2安装OpenUI2.本地访问OpenUI3.安装Cpolar内网穿透4.实现公网访问OpenUI5.固定OpenUI公网地址前言本篇文章介绍如何在Windows系统本地部署OpenUI并结合Cpolar内网穿透工具配置公网地址,轻松实......
  • .net core使用RabbitMQ
    目录1.基本概念2.环境搭建3.使用 RabbitMQ是一个可靠且成熟的消息传递和流代理,它很容易部署在云环境、内部部署和本地机器上。它目前被全世界数百万人使用。1.基本概念生产者(Producer)生产者是一个发送消息的程序。发送消息的程序可以是任何语言编写的,只要它能够......
  • MySQL之事务
    事务的简介:事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。例如生活中的转账事务的操作:方式一:关闭自动提交模式使用步骤:关闭自动提交模式:set@@autocommit=0;执行......
  • cover MySQL三部曲备份【逻辑备份+物理备份】脚本,生产实践
    前言:逻辑备份[mysqldump]物理备份[Xtrbackup]1、mysqldump全备建议手动制定库,不要选择–all,容易在数据恢复时发生问题–set-gtid-purged=OFF选项,在备份时会记录binlog日志,如果不加,不记录binlog日志,所以在我们做主从用了gtid时,用mysqldump备份时就要加–set-gtid-pur......
  • Facebook运营干货:账号类型有哪一些?有必要使用静态住宅IP吗?
    Facebook作为月活跃用户数高达几十亿的社交媒体平台,一直不断有新用户选择加入。从个人用户的生活分享到企业用户的商务宣传推广,Facebook提供各大功能和模块来满足用户需求。相应的,用户也需要了解平台特点来进行相应的操作。本文从账号类型出发来讲述Facebook运营技巧。一、......
  • Visual Studio 使用GIT详解
    在VisualStudio中使用Git,可以帮助你有效地管理和版本控制代码。下面是详细的步骤和功能概述:1.设置Git仓库打开项目:启动VisualStudio并打开你的项目或解决方案。创建Git仓库:在菜单栏选择“Git”。选择“创建Git仓库”,这会将当前项目初始化为一个Git......
  • 使用 VSCode 调试 Zig
    首要条件是你本地需要安装MinGW-w64.可以参考MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本-jack_Meng-博客园(cnblogs.com)这里有几点需要注意,在2024年9月时,我没有找exe的安装,你需要在github下载 Releases·niXman/mingw-builds-binaries(github.com)具体下......
  • 基于SpringBoot+Vue+MySQL的智能物流管理系统
    系统展示系统背景  随着信息技术的飞速发展和电子商务的蓬勃兴起,智能物流管理系统的需求日益迫切。传统的物流管理方式已难以满足高效、精准、实时的管理需求。因此,基于SpringBoot、Vue和MySQL的智能物流管理系统应运而生。该系统旨在通过现代化的技术手段,实现物......
  • 使用memcpy进行分段copy
    一、概述使用场景:在音视频开发中,用YUV数据+OpenGL进行画面渲染。经常会将Y分量、U分量、V分量分开。分别上传到GPU,由GPU转换为RGB进行最终展示。使用这种方式的原因是基于GPU计算效率高为前提的。在这个过程中经常会用到一个c函数memcpy。将yuv数据分别c......
  • 2024Mysql And Redis基础与进阶操作系列(6)作者——LJS[含MySQL 多表之一对一/多;多对多;
    MySQL多表操作1多表关系简介1.1一对一关系比如1.2一对多/多对一关系比如:实现规则:1.3多对多关系举例:规则:2.多表联合查询简介多表查询有以下分类知识补充——笛卡尔积(了解即可)交叉连接查询[产生笛卡尔积]内连接查询(使用的关键字innerjoin--inner可以省......