首页 > 数据库 >安装mysql和运程连接

安装mysql和运程连接

时间:2024-05-14 12:10:12浏览次数:19  
标签:容器 宿主机 etc mysql 运程 docker root 连接

一、拉取镜像
# 拉取镜像
docker pull mysql
 
# 或者
docker pull mysql:latest
# 指定版本号
docker pull mysql:5.7

# 以上两个命令是一致的,默认拉取的就是 latest 版本的
 
# 我们还可以用下面的命令来查看可用版本:
docker search mysql
二、查看镜像
docker images
三、运行镜像
docker run -p 3306:3306 --name mysql --restart=always --privileged=true \
-v /usr/local/mysql/log:/var/log/mysql \
-v /usr/local/mysql/data:/var/lib/mysql \
-v /usr/local/mysql/conf:/etc/mysql \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

#我的运行
docker run -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:latest

-p 3306:3306:指定宿主机端口与容器端口映射关系
--name mysql:创建的容器名称
--restart=always:总是跟随docker启动
--privileged=true:获取宿主机root权限
-v /usr/local/mysql/log:/var/log/mysql:映射日志目录,宿主机:容器
-v /usr/local/mysql/data:/var/lib/mysql:映射数据目录,宿主机:容器
-v /usr/local/mysql/conf:/etc/mysql:映射配置目录,宿主机:容器
-v /etc/localtime:/etc/localtime:ro:让容器的时钟与宿主机时钟同步,避免时区的问题,ro是read only的意思,就是只读。
-e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456
-d mysql:latest:后台运行mysql容器,版本是latest

四、修改mysql的密码

#查看启动的MySQL容器id
docker ps |grep mysql
---->
CONTAINER ID   IMAGE     COMMAND                   CREATED         STATUS          NAMES
75580b82c2eb   mysql     "docker-entrypoint.s…"   6 minutes ago   Up 6 minutes      mysql02

#进入启动的MySQL容器中
docker exec -it 75580b82c2eb /bin/bash

#修改MySQL配置文件,在最后一行添加skip-grant-tables代码( //跳过mysql的密码验证)
#(如果容器中没有vim命令的话,可以依次使用命令apt-get update ,apt-get install vim 下载安装vim)
vim /etc/mysql/conf.d/docker.cnf

#重启数据库
service mysql restart

#重启MySQL容器
 docker restart 75580b82c2eb
 
#再次进入启动的MySQL容器内
 docker exec -it 75580b82c2eb  /bin/bash

#使用语句mysql -u root -p 语句,登录数据库,不用输入密码,直接回车
mysql -u root -p

#使用MySQL数据库
use mysql

#更新用户密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

#刷新权限
FLUSH PRIVILEGES;

#再次编辑mysql配置文件,删除刚刚添加的skip-grant-tables
vim /etc/mysql/conf.d/docker.cnf

#再次重启mysql
service mysql restart

#再次重启docker容器
docker restart 75580b82c2eb

标签:容器,宿主机,etc,mysql,运程,docker,root,连接
From: https://www.cnblogs.com/doudoushijiao/p/18191035

相关文章

  • AutoMySQLBackup加密备份解密问题浅析
    AutoMySQLBackup备份配置了加密选项过后,它会将数据库的备份文件加密。测试解密这些加密的备份文件时遇到错误(密钥做了脱敏处理)。$ openssl enc -aes-256-cbc -d -in  daily_mysql_2024-05-14_09h09m_Tuesday.sql.gz.enc \>   -out daily_mysql_2024-05-14_09h09m_T......
  • Mysql入门操作 5.0
    orderby子句: 直接使用orderby对相应的列进行排序是从小到大,在末尾加上desc是从大到小排序;如下图 limit子句: 下面是使用实例其实也是增加一个后缀,限制所要显示信息行数,如果limit后面只跟一个数字就是默认从第一个开始取结果,如果后跟两个数字表示从第一个数字开始取第二......
  • MYSQL存储过程-练习3 repeat循环
    repeat循环1DELIMITER$$23CREATEPROCEDURE`sp_repeat`()4BEGIN5DECLAREiINT;6SETi=1;7REPEAT8SELECTi;9SETi=i+1;10UNTILi>=511ENDREPEAT;12END$$1314DELIMITER;执行存储过程1mysql>callsp_repea......
  • MYSQL存储过程-练习4 loop循环
    创建存储过程1DELIMITER$$23CREATEPROCEDURE`sp_loop`()4BEGIN5DECLAREiINT;6SETi=1;7lp1:LOOP8SELECTi;9SETi=i+1;10IFi>5THEN11LEAVElp1;12ENDIF;13ENDLOOP;14END$$1516DELIMIT......
  • 连接查询(多表查询)
    连接两个条件where...and...非等值连接自连接......
  • 连接SQL Server报错
    将框架从.NET6升级到8,顺便将各种依赖包也升级,容器化部署到测试环境后,SQLServer连接不了了:[2024-05-1313:48:10ERR][Microsoft.EntityFrameworkCore.Database.Connection]Anerroroccurredusingtheconnectiontodatabase'Demo'onserver'127.0.0.1'.[2024-05-131......
  • mysql存储函数
      存储函数是有返回值的存储过程,存储函数的参数只能是IN类型的。具体语法如下:CREATEFUNCTION存储函数名称([参数列表])RETURNStype[characteristic...]BEGIN--SQL语句RETURN...;END;characteristic说明:DETERMINISTIC:相同的输入参数总是产生相同的结果......
  • Flink同步mysql到iceberg
    一、如何做一致性保障1、全量数据分片读取,增量数据单并发读取,保证增量阶段不会乱序2、全量阶段写入失败会清空表后重新写入,避免重复数据。3、全量阶段多task并行读取,把每个task开始结束时间提交给FlinkCoordinator,由Coordinator做时间合并后,仅读取一次全量同步区间内变化的binlo......
  • Java开发微服务SpringCloudAlibaba+Nginx+Vue+Mysql+RabbitMQ
    项目介绍随着互联网技术的飞速发展和移动设备的普及,自媒体平台已经成为人们获取信息、传播观点、实现自我价值的重要途径。自媒体平台的设计与实现,不仅需要考虑如何提供便捷的内容发布、编辑和管理功能,还需要考虑如何构建健康的内容生态,保证信息的真实性和可靠性,防止虚假信息的传......
  • mysql存储过程
    1.介绍  存储过程是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。  存储过程思想上很简单,就是数据库SQL语言层面的代码封装与重用。特点:......