首页 > 数据库 >Docker部署mysql5.7数据库

Docker部署mysql5.7数据库

时间:2023-12-15 19:56:13浏览次数:38  
标签:set mydata utf8 mysql5.7 mysql 3306 Docker root 数据库

1、拉取镜像

docker pull mysql:5.7

image

2、启动mysql5.7镜像

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 用户的密码

3、mysql配置文件

[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:跳过域名解析

4、登录容器内部mysql数据库

docker exec -it mysql mysql -uroot -proot

4、设置mysql远程root访问

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

标签:set,mydata,utf8,mysql5.7,mysql,3306,Docker,root,数据库
From: https://www.cnblogs.com/ccblblog/p/17904097.html

相关文章

  • 常用docker 配置2023
    https://docs.docker.com/engine/install/ubuntu/安装Docker引擎编辑配置文件/mysql/conf/my.cnf[mysql]#设置mysql客户端默认字符集default-character-set=UTF8MB4[mysqld]#设置3306端口port=3306#允许最大连接数max_connections=200#允许连接失败的次数max_connect_errors=10#......
  • 快速打印docker容器日志
    有的时候需要在服务器上查看日志信息。往往敲命令又太多,觉得麻烦,所以写了一个这个脚本。赋权之后,这个脚本里面丢到/usr/local/bin/下面。就可以在任何地方使用lgs,然后输入容器部分的名字。如果有多个输入序号就可以打印日志啦。#/bin/bashread-p"entername:"contain......
  • 基于Lighthouse安装docker
    1.前言 在此之前小编通过各种方式介绍过自己通过服务器搭建的一些玩法,也写过一些教程,但是那些教程,现在回头来看,都是有些杂乱了,统一性不强。我就准备重新整理一下之前写的文章,并且准备重新开一个专题来写自己折腾的内容,专题的名字就叫-原来服务器这么有用。也希望大家多多提意......
  • docker部署redis主从集群
    1、创建数据目录(logs目录要给权限,要不然会报错)mkdir-pv/data/redis/(data,logs}chmod777/data/redis/logs2、redis.conf配置文件-—-主从配置master节点配置cd/data/redisvimredis.confport6379bind0.0.0.0daemonizenoprotected-modenorequirepass123......
  • 九、数据库设计的三范式
    一、数据库设计三范式二、数据库设计第一范式三、数据库设计第二范式四、数据库设计第三范式五、总结数据库表的设计六、以满足客户需求为准......
  • 【腾讯云云上实验室】用向量数据库在金融信用数据库分析中的实战运用
    一、前言这篇文章将带领读者探索数据库的多样化解决方案及其演进历程,特别关注向量数据库的重要性和在实际项目中的应用。通过深入剖析腾讯云向量数据库及其在金融信用数据库分析中的实战运用,为读者提供全面而实用的指南,帮助他们理解、应用和掌握这一技术领域的关键要点。二、数......
  • 开源组件DockerFIle老是Build失败,如何解决
    推荐把外网地址替换为国内高速镜像#替换源地址http://dl-cdn.alpinelinux.org/alpine===https://mirrors.aliyun.com/alpinehttps://repo1.maven.org/maven2=====https://maven.aliyun.com/repository/public#goinstall代理proxy.golang.orggoenv-wGO11......
  • 第五十九天 Djando和数据库之间的联动
    一、表查询数据准备及测试环境搭建1.django自带一个sqlite3小型数据库 该数据库功能非常有限并且针对日期类型的数据兼容性很差2.django切换MySQL数据django1.X importpymysql pymysql.install_as_MySQLdb()django2.X3.X4.X pipinstallmysqlclient"""在服务器上启......
  • MySQL往数据库插时间格式的数据时,只保存年月日,不保存时分秒。
     MySQL往数据库插时间格式的数据时,只保存年月日,不保存时分秒。今天在写项目时候,需要将数据insert到数据库中。但是,看到插入数据库中的时间只有年月日,没有时分秒。 查看实体类没毛病 查看xml文件也没有问题  timestamp和datetime区别: 最后经过排查发现问题......
  • docker-compose 一键部署
    3.3.DockerCompose大家可以看到,我们部署一个简单的java项目,其中包含3个容器:MySQLNginxJava项目而稍微复杂的项目,其中还会有各种各样的其它中间件,需要部署的东西远不止3个。如果还像之前那样手动的逐一部署,就太麻烦了。 而DockerCompose就可以帮助我们实现多个相......