Windows/Mac系统Docker方式安装Mysql(包含utf8)

下面是详细的攻略:

准备工作

在开始安装Mysql之前,需要先安装Docker。如果你已经安装好了Docker,可以直接跳过这一步。

Windows系统

Windows用户需要前往Docker官网下载并安装Docker Desktop软件,Windows 10版本以上的用户可以在以下链接中下载:

https://hub.docker.com/editions/community/docker-ce-desktop-windows/

Mac系统

Mac用户需要前往Docker官网下载并安装Docker Desktop软件,可以在以下链接中下载:

https://hub.docker.com/editions/community/docker-ce-desktop-mac/

安装Mysql

步骤一:拉取Mysql镜像

首先,在终端中通过以下命令拉取Mysql官方镜像:

docker pull mysql:5.7

由于Mysql官方镜像默认使用latin1字符集,如果需要使用utf8字符集,可以在pull命令后添加--character-set-server=utf8 --collation-server=utf8_general_ci参数。

步骤二:创建Mysql容器

接着,在终端中执行以下命令创建Mysql容器:

docker run -p 3306:3306 --name mysql -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7 --character-set-server=utf8 --collation-server=utf8_general_ci

其中,/my/own/datadir是宿主机上保存数据的目录,可以根据自己的需求修改。

步骤三:连接Mysql

最后,在本地使用Mysql客户端连接Mysql服务即可:

mysql -h 127.0.0.1 -P 3306 -u root -p

# 输入密码即可登录

示例说明

示例一:使用Docker Compose同时启动多个服务

在使用Docker Compose同时启动多个服务时,可以通过以下示例将Mysql服务添加到docker-compose.yml文件中:

version: '3'
services:
  mysql:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: my-secret-pw
      MYSQL_DATABASE: my-db
      MYSQL_USER: my-user
      MYSQL_PASSWORD: my-password
    ports:
      - "3306:3306"
    volumes:
      - ./data:/var/lib/mysql

添加完成后,在终端中使用以下命令启动所有服务:

docker-compose up -d

示例二:使用配置文件启动Mysql服务

在使用配置文件启动Mysql服务时,可以通过以下示例创建配置文件:

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

[client]
default-character-set=utf8

然后在终端中执行以下命令启动Mysql服务:

docker run --name mysql -v /my/own/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d -p 3306:3306 -v /path/to/my.cnf:/etc/mysql/my.cnf:mysql:5.7

其中,/path/to/my.cnf是配置文件的路径。

以上就是完整的攻略,希望对你有帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Windows/Mac系统Docker方式安装Mysql(包含utf8) - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • mysql 备份与迁移 数据同步方法

    当需要迁移或备份mysql中的数据时,需要使用数据同步方法,以下是mysql备份与迁移数据同步方法的完整攻略: 1. 备份数据 1.1 使用mysqldump 在mysql服务器上运行以下命令: mysqldump -u USERNAME -p DATABASE_NAME > BACKUP.sql 其中,USERNAME是你的mysql用户名,DATA…

    database 2023年5月22日
    00
  • MySQL中日期型单行函数代码详解

    以下是MySQL中日期型单行函数的详细攻略: 一、日期型单行函数 MySQL提供了丰富的日期型单行函数,方便用户进行日期类型数据的处理。 1.1 CURDATE()函数 该函数用于返回当前日期,格式为’YYYY-MM-DD’。 示例: SELECT CURDATE(); 结果为: +————+ | CURDATE() | +———…

    database 2023年5月22日
    00
  • Redis批量删除KEY的方法

    Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过我们可以借助 Linux 的 xargs 指令来完成这个动作。   代码如下: redis-cli keys “*” | xargs redis-cli del //如果redis-cli没有设置成系统变量,需要指定redis-cli的完整路径 //如:/opt/red…

    Redis 2023年4月13日
    00
  • Android SQLite数据库增删改查操作的使用详解

    Android SQLite数据库是一种轻量级的数据库,适用于在移动开发中存储少量数据。本文将详细讲解Android SQLite数据库的增删改查操作,方便开发者更好地利用SQLite存储数据。 创建数据库 在使用SQLite数据库前,首先需要创建一个数据库。可以通过继承SQLiteOpenHelper类并实现onCreate()方法和onUpgrade()…

    database 2023年5月21日
    00
  • IIS运行错误 Server Application Error 错误代码 Error: 8004的解决方法

    下面是详细讲解“IIS运行错误 Server Application Error 错误代码 Error: 8004的解决方法”的完整攻略。 问题描述 在运行IIS时,出现了 Server Application Error 错误提示,错误代码为 Error: 8004。 问题原因 这个错误通常是由于IIS对应的应用程序池崩溃或停止而引起的。当IIS应用程序池…

    database 2023年5月21日
    00
  • ASCII码对照表以及各个字符的解释(精华版)

    ASCII码对照表是一种将字符与数字相对应的编码方式,它是计算机中最常用的编码方式之一。在 ASCII 码对照表中,每个可打印字符都与一个唯一的十进制数 (0~127) 相对应。以下是 ASCII 码对照表中表格的解释: 十进制 字符 描述 32     空格 48~57 0~9 数字 65~90 A~Z 大写字母 97~122 a~z 小写字母 127 D…

    database 2023年5月22日
    00
  • 使用Jedis操作Redis-使用Java语言在客户端操作—对key的操作

      1 //添加String类型的模拟数据。 2 jedis.set(“mykey”, “2”); 3 jedis.set(“mykey2”, “hello”); 4 //添加Set类型的模拟数据。 5 jedis.sadd(“mysetkey”, “1”,”2″,”3″); 6 //添加Hash类型的模拟数据。 7 jedis.hset(“mmtest”,…

    Redis 2023年4月12日
    00
  • Sql在单一表中检索数据的方法详解

    Sql在单一表中检索数据的方法详解 为了在单一表中检索数据,我们可以使用Sql提供的一些查询方法。下面将详细介绍这些方法。 1. SELECT语句 SELECT语句是Sql中最常用的语句之一,用于从一个表格中选择一些列并返回其值。下面是一个SELECT语句的示例: SELECT column_name1, column_name2, … FROM table…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部