首页 > 数据库 >docker安装mysql8.0.23

docker安装mysql8.0.23

时间:2024-07-08 23:00:15浏览次数:22  
标签:set 23 utf8 cnf mysql8.0 mysql home docker

拉取镜像

docker pull mysql:8.0.23

创建挂载文件

mkdir -p /home/docker/mysql/conf
mkdir -p /home/docker/mysql/data
mkdir -p /home/docker/mysql/log

cd /home/docker/mysql/conf
touch my.cnf

编辑my.cnf

vi my.cnf

内容如下:

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

[mysqld]

# 不区分大小写
lower_case_table_names = 1

#开启慢查询
slow_query_log = ON
#修改慢sql的阈值,sql执行超过阈值的时候就会记录到慢日志的log文件中
long_query_time = 1


#由于在MySQL5.7版本以上,默认设置SQL_Mode模式,在模式里有NO_ZERO_DATE,NO_ZERO_IN_DATE,存在表示系统里DATE类型字段不能有0值
sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

#Mysql报错Packet for query is too large问题解决
max_allowed_packet=4M

启动容器

docker run -d \
--name mysql \
-p 3306:3306 \
--restart unless-stopped \
-v /home/docker/mysql/log:/var/log/mysql \
-v /home/docker/mysql/data:/var/lib/mysql \
-v /home/docker/mysql/conf:/etc/mysql/conf.d \
-v /home/docker/mysql/conf/my.cnf:/etc/my.cnf \
-e MYSQL_ROOT_PASSWORD=密码 \
mysql:8.0.23

创建用户和授权

#进入容器内部
docker exec -it 容器id /bin/bash

mysql -u root -p
密码

#创建用户和密码,以及授权
create user 'gxj'@'localhost' identified by '密码';
grant all on *.* to 'gxj'@'localhost';
flush privileges;

#找到mysql数据库
use mysql;
#查看结果是不是root用户仅允许本地 localhost 登录,是的话,就要修改它的host为%,表示任意IP地址都可以登录
select host ,user from user;


#手动修改,把root 的locahost改为%(原作者那是单引号,应该用双引号)
update user set host ="%" where user="gxj";
flush privileges;

标签:set,23,utf8,cnf,mysql8.0,mysql,home,docker
From: https://blog.csdn.net/gxy03/article/details/140280888

相关文章

  • Ubuntu安装docker
    1、首先查看内核以及架构详细信息命令uname-aPS:安装的是较新版本的ubuntu22.04.2的可以省略(我安装的就是这个版本) 2、安装软件之前的尽可能下意识执行的三个命令sudoapt-getupdatesudoapt-getupgradesudoapt-getfull-upgrade 3、添加Docker库1)安装必要的证书......
  • PN转232网关模块接扫码枪与CPU通讯
    在现代物流、汽车生产线等领域,广泛使用条码扫码枪快速扫描产品条码,提高工作效率。为了保证条码扫码枪与CPU之间的准确通信,PN转232网关模块成为关键部件。本文将深入研究PN转232网关模块(BT-PNR20)的作用和原理,以及如何实现条码扫码枪与CPU之间的高效通信。一、PN转232网关模块的功......
  • docker基础
    Docker原理和概念镜像:类似于c++中的类,创建出一种具有独特属性的类容器:类似于c++中的实例化的对象仓库:储存镜像的地方,可以订阅别人创好的镜像,也可以上传自己的对象使用Client-Server架构模式,DockerClient和DockerDaemon之间,通过Socket或者RESTfulAPI进行通信安装配置......
  • RS232转PN协议网关模块连接PLC和霍尼韦尔条码扫描器通信
    为了更快地输入信息,许多设备都配备了条码扫描器,但条码扫描器不能直接与CPU通信。最直接和方便的方法是加RS232转PN协议网关模块(BT-PNR20)。本文将深入研究如何利用巴图自动化的RS232转PN协议网关模块,在PLC和条码扫描器之间搭建通信桥梁,从而提高生产效率,降低人工干预成本。一、设......
  • 2023首届服务韧性工程(SRE)论坛分会场:数据中心运维的新发展
    2023年12月15日,2023首届服务韧性工程(SRE)论坛在杭州成功举行,大会邀请了来自通信、金融、医疗、制造行业等100余位SRE领域专业人士参加,本次大会特别设立了主题为“数据中心运维的新发展”的分会场,由广通优云和SRE专委会联合出品。邀请来自数据中心领域不同行业的产学研用的专家,就......
  • 必经之路-美团2023笔试(codefun2000)
    题目链接必经之路-美团2023笔试(codefun2000)题目内容塔子哥的班主任最近组织了一次户外拓展活动,让班里的同学们一起去爬山。在路上,塔子哥看到了一棵漂亮的树,他对这棵树产生了浓厚的兴趣,开始观察并记录这棵树的一些特征。塔子哥发现这棵树有n个节点,其中有一条边被特......
  • P2239 [NOIP2014 普及组] 螺旋矩阵
    洛谷题面:题目分析本题需要一个旋转的数字矩阵,因为填数要求,首先考虑DFS。注意写题目时,一定一定要注意数据范围!在此题中,注意数据范围对于 50%的数据,1⩽......
  • MVME147-023 单板计算机
    型号:MVME147-023类别:单板计算机配置:•33MHzMC68030微处理器•33.33MHzMC6888协处理器•16MBDRAM•(2)BIOS芯片•以太网收发器接口•SCSI总线接口单板计算机是基于单一电路板而构建的完整计算机系统,其核心架构......
  • Asun安全学习【漏洞复现】CVE-2023-38831 WinRAR代码执行漏洞
    (ps:本人是小白,复现漏洞来进行安全学习,也借鉴了许多大佬的研究内容,感谢各位大佬进行指导和点评。)[漏洞名称]:CVE漏洞复现-CVE-2023-38831WinRAR代码执行漏洞[漏洞描述]:WinRAR是一款功能强大的Windows文件压缩和解压缩工具,支持高效的压缩算法、密码保护、分卷压缩、恢复记录等......
  • Docker容器的基本操作
    1容器操作添加容器的两种方法会自动添加生成一个随机名字#启动dockersystemctlstatusdockersystemctlstartdockersystemctldaemon-reload#重新加载docker配置systemctlrestartdocker#重启docker#1镜像操作 -dockersearch -dockerpull......