Docker | Compose创建mysql容器

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: Docker | Compose创建mysql容器

在linux服务器上创建文件,用于管理容器


  • mkdir docker-mysql
  • cd docker-mysql
  • vim docker-compose.yml  #写入如下内容


docker-compose.yml

version: "3"
services:
  mysqldb:
    image: mysql:5.7
    restart: always
    container_name: mysql57
    ports:
      - 3310:3306
    volumes:
      - /var/vol_dockers/mysqldb/conf:/etc/mysql/conf.d
      - /var/vol_dockers/mysqldb/data:/var/lib/mysql
    environment:
      MYSQL_PSAAWORD: PSAAWORD
      MYSQL_ROOT_PASSWORD: PSAAWORD
      MYSQL_USER: root
      MYSQL_DATABASE: database


记得防火墙要开放3306、3310端口


创建启停脚本文件


  • vim start

docker-compose up -d

  • vim restart

docker-compose restart

  • vim stop

docker-compose stop


修改脚本文件权限


chmod 777 st* restart

image.png

启动mysql容器


./start

  • 查看容器

image.png


mysql数据库基本配置


  1. 创建MySql用户


CREATE USER dbadmin@localhost IDENTIFIED BY 'pwd';

dbadmin@localhost,表示只允许 localhost 环境的 dbadmin 用户登录


  1. 设置可访问的主机


update user set host = '%' where user = 'dbadmin';

% 表示接受所有主机ip访问


  1. 最后刷新生效


flush privileges;


整体步骤:


1、连接服务器: mysql -u root -p

2、看当前所有数据库:show databases;

3、进入mysql数据库:use mysql;

4、查看mysql数据库中所有的表:show tables;

5、查看user表中的数据:select Host, User,Password from user;

6、修改user表中的Host: update user set Host='%' where User='root';

7、最后刷新一下:flush privileges;


客户端连接


这里我使用的是SQLyog工具连接MySQL数据库


sqlyog连接服务器的3310端口,3310端口映射MySQL容器的3306端口。

image.png

image.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2天前
|
关系型数据库 MySQL API
|
15天前
|
缓存 监控 持续交付
|
21天前
|
关系型数据库 MySQL Linux
Docker安装Mysql5.7,解决无法访问DockerHub问题
当 Docker Hub 无法访问时,可以通过配置国内镜像加速来解决应用安装失败和镜像拉取超时的问题。本文介绍了如何在 CentOS 上一键配置国内镜像加速,并成功拉取 MySQL 5.7 镜像。
181 2
Docker安装Mysql5.7,解决无法访问DockerHub问题
|
5天前
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
14 1
|
10天前
|
负载均衡 监控 开发者
深入浅出:掌握 Docker Compose 的高级用法
【10月更文挑战第22天】本文深入探讨了 Docker Compose 的高级用法,包括环境变量、服务扩展、网络配置和数据卷管理。通过实例详细介绍了如何利用这些功能提升开发效率和应用部署的灵活性。适合希望深入了解 Docker Compose 的开发者阅读。
|
22天前
|
Ubuntu Linux 网络安全
Docker&Docker Compose安装(离线+在线)
Docker&Docker Compose安装(离线+在线)
146 1
|
29天前
|
存储 Kubernetes 持续交付
Docker Compose
【10月更文挑战第3天】
45 6
|
26天前
|
存储 Kubernetes 调度
掌握 Docker Compose
【10月更文挑战第6天】
17 1
|
1月前
|
关系型数据库 MySQL 数据库
使用Docker部署的MySQL数据库,数据表里的中文读取之后变成问号,如何处理?
【10月更文挑战第1天】使用Docker部署的MySQL数据库,数据表里的中文读取之后变成问号,如何处理?
53 3
|
1月前
|
弹性计算 关系型数据库 MySQL
Docker安装MySQL
这篇文章详细介绍了如何使用Docker安装MySQL数据库服务,包括拉取镜像、配置数据卷以及启动容器的步骤。
228 0
Docker安装MySQL

热门文章

最新文章