logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

数据库配置字符集为utf8mb4 ,且配置文件增加 initconnect='set names utf8mb4' 后仍然报错。解决方案 注意事项

增加数据库配置后initconnect=‘set names utf8mb4’仍报错,是因为源码里 每次会根据 获取的数据库信息判断后, 执行 set names utf8;参考mysql 官方文档,解决方案升级版本:升级后,测试 生僻字多表关联查询,不再报错;解决后,修改字符集, 部分表 所有列 长度加起来 超过了 65535 字节,也会报错:是因为utf8 一般一...

多线程(二) -- 管程(二) -- Synchronized底层Monitor,轻量级、偏向锁,锁膨胀

Java对象头以 32 位虚拟机为例,普通对象的对象头结构如下,其中的Klass Word为指针,指向对应的Class对象;数组对象:其中 Mark Word 结构为:所以一个对象的结构如下:Monitor(锁)Monitor被翻译为监视器或管程每个java对象都可以关联一个monitor对象,如果使用synchronized给对象上锁(重量级)之后,该对象头的Mark Word中就被设置指向Mo

文章图片
#java#开发语言#后端
Docker学习(四) -- 制作私有镜像推送到阿里云或私服

1. 将自己创建的镜像发布到阿里云仓库:1.1 在阿里云容器镜像服务中创建个人实例1.2 进入个人实例,创建命名空间1.3 创建镜像仓库,会产生一些阿里云为你生成的命令操作指南:1. 登录阿里云Docker Registry$ docker login --username=messi9**** registry.cn-hangzhou.aliyuncs.com用于登录的用户名为阿里云账号全名,密

#docker#学习#阿里云
Docker学习(一) -- 理论及Linux安装、windows安装

1. 前言以前的发布:开发提交src源代码交给运维运营进行部署,发现环境或部分版本不一致:如java版本、mysql版本、redis等多台集群,安装麻烦扩容或者或者缩容,比较麻烦我们是不是可以开发直接将已经完成测试的全部环境以及代码一起交给运营进行发布呢?我们的docker就是来完成这个工作的。2. 是什么docker是一种容器虚拟化计数就像是vmware,linux的镜像文件是可以在vmware

#docker#linux#容器
Mysql学习(十)-- Mysql子查询关键字的使用(in和exists)

1. all1.1 格式:1.2 特点:all:与子查询返回的所有值比较为true则返回trueall可以与=,>=,>,<,<=,<>结合使用,分别表示等于,大于等于,大于,小于,小于等于,不等于其中的所有数据大于all表示指定列中的值必须要大于子查询集中的每一个值,即必须要大于子查询集的最大值;如果是小于即小于子查询中的最小值。1.3 操作:2. any(s

文章图片
#数据库开发
Mysql学习(四) -- 分库分表

一、单库单表存在的问题假设你要设计一个电商网站,在一开始,User表、Order表、Product表等等各种表都在同一个数据库中,每个表都包含了大量的字段。在用户量比较少,访问量也比较少的时候,单库单表不存在问题。但是公司可能发展的比较好,用户量开始大量增加,业务也越来越繁杂。一张表的字段可能有几十个甚至上百个,而且一张表存储的数据还很多,高达几千万数据,更难受的是这样的表还挺多。于是一个数据库的

文章图片
#mysql#学习#数据库
WebSocket(三) -- 使用websocket+stomp实现群聊功能

SpringBoot+websocket的实现其实不难,你可以使用原生的实现,也就是websocket本身的OnOpen、OnClosed等等这样的注解来实现,以及对WebSocketHandler的实现,类似于netty的那种使用方式,而且原生的还提供了对websocket的监听,服务端能更好的控制及统计(即上文实现的方式)。但是,真实项目中还是使用Stomp实现的居多,因为独立服务更方便,便于

#websocket#java#网络协议
Redis(四) -- Redis数据类型(一) -- String

string是Redis最基本的类型,可以理解成与memcached一模一样的类型,一个key对应一个valuestring类型是二进制安全的。意味着Redis的string可以包含任何数据。比如jpg图片或者序列化的对象一个redis中字符串value最多可以是512M。

#redis#数据库#缓存
到底了