数据库

Docker中MySql提示only_full_group_by问题的解决方法

  数据库       2022年12月15日       507 热度    
之前版本可以直接在my.cnf中添加sql_mode就行,但是在8.0.x版本中无效(具体哪个版本开始的不清楚,当前使用的是8.0.30版本)解决方案我们需要新建一个custom.cnf文件[mysqld]sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SU

Redis还可以做哪些事?

  数据库       2020年11月11日       923 热度    
一 Bitmaps在计算机中,使用二进制做为信息的基础单元,也就是输入的任何信息,最终在计算机底层都会转会为一串二进制的数字。在redis中,提供了Bitmaps来进行位操作。我们可以把Bitmaps想象成一个以位为单位的数组,数组的下标叫做偏移量。使用Bitmaps的优势就是占用空间更少。假如我们想记录员工今天是否登录过公司官网,我们可以日期做为key,员工id做为偏移量(这里员工id在数据库中

Redis可以做哪些事?

  数据库       2020年11月10日       889 热度    
Redis是一种基于键值对的NoSQL数据库,它的值主要由string(字符串),hash(哈希),list(列表),set(集合),zset(有序集合)五种基本数据结构构成,除此之外还支持一些其他的数据结构和算法。key都是由字符串构成的,那么这五种数据结构的使用场景有哪些?一起来看看!一 字符串字符串类型是Redis最基础的数据结构,字符串类型可以是JSON、XML甚至是二进制的图片等数据,但

MySQL时间戳和日期互转

  数据库       2019年06月04日       1,112 热度    
一、时间戳转日期------FROM_UNIXTIME注意:这里的时间戳为标准的时间戳,如果是Java的时间戳,则需要除以1000,其他语言也是类似。FROM_UNIXTIME的第二个参数是时间格式化的方式,自定义即可。selectFROM_UNIXTIME(存放时间戳的字段,'%Y-%m-%d')from表二、日期转时间戳-------UNIX_TIMESTAMPSELECTUN

MySql5.7 使用全文索引

  数据库       2019年01月25日       2,254 热度    
一、ngram and MeCab full-text parser插件全文检索在MySQL里面很早就支持了,只不过一直以来只支持英文。缘由是他从来都使用空格来作为分词的分隔符,而对于中文来讲,显然用空格就不合适,需要针对中文语义进行分词。但从MySQL 5.7开始,MySQL内置了ngram全文检索插件,用来支持中文分词,并且对MyISAM和InnoDB引擎有效。二、必要的参数设置在使用中文检索

Mysql的各种时间查询

  数据库       2018年12月14日       5,185 热度       1 条评论
1、几个小时内的数据select*from表名whereDATE_SUB(NOW(),INTERVAL5HOUR)<=时间字段名;2、今天select*from表名whereto_days(时间字段名)=to_days(now());3、昨天select*from表名WHERETO_DAYS(NOW())-TO_DAYS(时间字段名)=1;4、7天内(包含今天)select*from表名wh

为什么我们做分布式使用Redis?

  数据库       2018年09月30日       1,934 热度    
绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知。这里对Redis 常见问题做一个总结,解决大家的知识盲点。1、为什么使用Redis在项目中使用 Redis,主要考虑两个角度:性能和并发。如果只是为了分布式锁这些其他功能,还有其他中间件 Zookpeer 等代替,并非一定要使用Redis。性能
为什么我们做分布式使用Redis?

Mysql的用户创建与授权

  数据库       2018年06月22日       3,082 热度    
一、用户创建CREATEUSER'username'@'host'IDENTIFIEDBY'password';username:登录数据库的用户名host:指定该用户在哪个IP下可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意IP登陆,可以使用通配符%password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需

Mysql5.7新特性六

  数据库       2018年05月21日       5,687 热度    
一、动态生成的列(Generated Columns)MySQL现在支持在创建和修改列的时候使用generated columns。他的值由对应的表达式计算得出。它可以有两种存储方式,默认值是VIRTUAL:虚拟化(VIRTUAL)的(读取列时计算的)存储到数据库(STORED)的,会实际占用空间 (当行被插入或更新时计算的)默认创建方式:CREATETABLEtriangle( sideaDOU

Mysql5.7新特性五

  数据库       2018年05月14日       4,717 热度    
一、系统和状态变量(System and status variables)现在Performance Schema表中可以获取到系统和状态变量。它们会被优先存储于INFORMATION_SCHEMA表中。它们的值会影响到SHOW VARIABLES 和 SHOW STATUS的操作。show_compatibility_56(默认是OFF)这个系统参数的值会影响到输出系统和状态变量的那些语句和表

MySQL5.7的JSON函数介绍 ---- 属性查询

  数据库       2018年05月11日       5,378 热度    
1.JSON_DEPTH(json_doc)返回JSON document的最大深度。空数组、空对象或标量值的深度为1。一个只包含深度为1的元素的非空数组, 或仅包含深度为1的元素的非空对象,,其深度为2。否则,JSON文档的深度大于2。mysql>SELECTJSON_DEPTH('{}'),JSON_DEPTH('[]'),JSON_DEPTH('

MySQL5.7的JSON函数介绍 ---- 修改

  数据库       2018年05月11日       5,121 热度    
1.JSON_ARRAY_APPEND(json_doc, path, val[, path, val] ...)在指定的数组的最后附加一个值,然后返回修改后的json_doc。JSON_APPEND函数已被弃用,功能和JSON_ARRAY_APPEND一样,已在8.0版本中删除。mysql>SET@j='["a",["b","c&q