docker安装mysql和redis

docker安装mysql

1、下载镜像文件

docker pull mysql:5.7(对应相应版本即可)
2、创建实例并启动

docker run -p 3306:3306 --name mysql \

-v /mydata/mysql/log:/var/log/mysql \

-v /mydata/mysql/data:/var/lib/mysql \

-v /mydata/mysql/conf:/etc/mysql \

-e MYSQL_ROOT_PASSWORD=root \

-d mysql:5.7

参数说明

-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口

-v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机

-v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机

-v /mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机

-e MYSQL_ROOT_PASSWORD=root:初始化 root 用户的密码

MySQL 配置

vi /mydata/mysql/conf/my.cnf

client

default-character-set=utf8

mysql

default-character-set=utf8

mysqld

init_connect='SET collation_connection = utf8_unicode_ci'

init_connect='SET NAMES utf8'

character-set-server=utf8

collation-server=utf8_unicode_ci

skip-character-set-client-handshake

skip-name-resolve

注意:解决 MySQL

连接慢的问题

在配置文件中加入如下,并重启 mysql

mysqld

skip-name-resolve

解释:

skip-name-resolve:跳过域名解析
3、通过容器的 mysql 命令行工具连接

docker exec -it mysql mysql -uroot -proot
4、设置 root 远程访问(服务器的话要配置安全组开放端口,虚拟机直接关闭防火墙即可)

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

flush privileges;
5、进入容器文件系统

docker exec -it mysql /bin/bash

docker 安装 redis

1、下载镜像文件

docker pull redis
2、创建实例并启动

mkdir -p /mydata/redis/conf

touch /mydata/redis/conf/redis.conf

docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \

-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \

-d redis redis-server /etc/redis/redis.conf

redis 自描述文件:

https://raw.githubusercontent.com/antirez/redis/4.0/redis.conf

3、使用 redis 镜像执行 redis-cli 命令连接

docker exec -it redis redis-cli

相关推荐
Flynt6 小时前
Redis Cluster主节点挂了,为什么"高可用"还全员掉线?我把三次kill的记录翻出来了
数据库·redis·分布式
灯澜忆梦6 小时前
【minio】#1 | 简介与安装
docker·对象存储·minio
java1234_小锋7 小时前
【技术专题】Mysql8 数据库 - Mysql8 数据类型简介
数据库·mysql
JosieBook8 小时前
【数据库】MySQL 实战精通系列 · 第10篇:分库分表与分布式事务实战
数据库·分布式·mysql
写后端的胖头鱼8 小时前
一文详解Cache Aside(旁路缓存模式)
redis·缓存·延迟双删·缓存一致
Web3&Basketball9 小时前
用FastAPI+Redis 复刻常驻Agent
redis·bootstrap·fastapi
做运维的阿瑞12 小时前
多表查询基础:INNER JOIN、LEFT JOIN、RIGHT JOIN
数据库·sql·mysql·算法
ly768913 小时前
Redis 主从复制全解析:从 PSYNC 协议到复制积压缓冲区的故障切换边界
java·数据库·redis·主从复制·故障切换·psync
夜雪一千14 小时前
MySQL 中什么是条件注释
数据库·mysql
hweiyu0014 小时前
Redis命令:HPEXPIREAT
redis·缓存