mysql
筏镜
这个作者很懒,什么都没留下…
展开
-
influxdb入门
前言对于传统关系型数据库,增删改查应该是必备且常用的功能,而influxdb常用的只有insert和select,没有提供update语法,虽然有delete可以删除数据(delete语法和mysql相似),但是需求不大。influxdb 相对于对监控数据的记录,用于对数据图标的展示,influxdb 2.0 版本已经更新,但由于2.0 版本与1.+ 版本相差比较大。加上对java 等相对应配套还不完善,这里都是1.+版本。安装使用一、下载安装# docker启动influxdbdocker r原创 2022-05-02 16:10:47 · 2102 阅读 · 1 评论 -
postgres 常用函数
准备create table test( id bigserial primary key not null, doc jsonb, ar jsonb default '[]'::jsonb, create_time TIMESTAMP not null default LOCALTIMESTAMP);--针对jsonb 插入部分值insert into test values(1,'{"nickname": "gs", "tags":{"name":"language","deta原创 2022-04-30 23:12:10 · 415 阅读 · 0 评论 -
Postgres 数据库常用一些sql语句
前言在使用Postgres 的时候经常会用到一些sql语句,还经常忘记。这里将比较常用sql语句做一下总结。SQL语句索引一、查询当表存在的索引select * from pg_indexes where tablename = '表名';二、创建及删除对应索引注: 这里添加CONCURRENTLY 是为防止创建索引这段时间导致操作这张表CREATE INDEX CONCURRENTLY pg_index_indrelid_index ON public.pg_index USING b原创 2021-11-13 17:56:25 · 1668 阅读 · 0 评论 -
liquibase 的数据库版本管理实践
前言之前项目中数据库管理混乱,导致上线的时候数据库执行频繁出问题,这里引入数据库管理工具liquibase,这里对liquibase 进行简单介绍。实践一、引入maven依赖 <dependency> <groupId>org.liquibase</groupId> <artifactId>liquibase-core</artifactId> <versio原创 2021-07-08 19:31:46 · 515 阅读 · 2 评论 -
postgres 通过zhparser实现全文搜索功能
前言我们在工作中遇到一个字段存储jsonb 类型,并需要对这个字段进行全文索引。由于对postgres 一些字段类型不清楚,走了一些弯路这里讲解。实践一、postgres 和 zhparser 的安装前面两步postgres 的安装网上挺多资料,可以省略。zhparser 的安装网上资料比较杂乱,后续做一下补充。二、全文索引的实践2、1 jsonb 类型(1)表结构的初始化,插入初始化数据create table test2( id int, doc jsonb);--针对原创 2021-04-12 14:46:33 · 725 阅读 · 0 评论 -
数据库设计文档-快速输出字段
前言我们在写数据库文档时候,经常需要需要将表结构通过图标方式展示出来,每次定义了表结构、域字段如何快速将表结构贴出来。postgres1、需要展示表的字段SELECT a.attname AS 字段名称, d.description AS 说明, concat_ws('',t.typname,SUBSTRING(format_type(a.atttypid,a.atttypmod) from '\(.*\)')) as 字段类型, (case when a.attlen > 0 th原创 2021-03-22 13:55:07 · 439 阅读 · 0 评论 -
lambdaQueryWrapper多条件嵌套查询
前言我们在使用mybatisPlus 查询数据的时候,有时候可能会没法想直接使用mybatisPlus 的java语句进行查询。这里贴出一个例子供查询参考。实践queryWrapper.and(wq -> { if(!CollectionUtils.isEmpty(orgList)){ wq.or(wq0 -> wq0.in(PatrolPlan::getOrgId, orgList)); wq.or(原创 2021-03-05 16:12:45 · 14175 阅读 · 3 评论 -
PostgreSql 数据库的使用
前言PostgreSql 开始使用之后,有一些语法和mysql有一些差别,这里希望做一些记录来供大家参考。PostgreSql 的使用一、创建表CREATE TABLE "public"."event_log" ( "id" int8 NOT NULL, "source_id" int8, "creater_id" int8, "source_model" varchar(64) COLLATE "pg_catalog"."default", "event_type" varch原创 2021-01-12 21:09:37 · 508 阅读 · 1 评论 -
树形结构表设计的思考
前言我们在实际设计树形表设计中,经常会遇到上级名称拼接下级名称共同构成一个完整的名称这种情况。知道下级id,获取从上级开始到该id的完整链路。这个需要我们去思考这种树形结构如何去设计。如果设计比较好的情况下能够减少,查询数据库的次数和从数据库中抓取的数据量。表的设计我们这里用行政空间的表设计来进行举例DROP TABLE IF EXISTS `sys_region`;CREATE TABLE `sys_region` ( `id` bigint(20) NOT NULL DEFAULT '0原创 2020-12-31 15:37:38 · 208 阅读 · 0 评论 -
mysql 的日志(binlog日志 和慢日志)
一、查看mysql数据所占的大小select table_name,data_length,index_length,(data_length+index_length) as length,table_rows,concat(round((data_length+index_length)/1024/1024/1024,3),'GB') as totalSize FROM information_schema.tablesWHERE table_schema = 'pt_query'ORDER BY原创 2020-06-28 00:53:39 · 505 阅读 · 0 评论 -
mysql隔离级别和mysql的加锁情况分析
mysql在并发比较大的时候,锁等待,死锁的情况的可能会出出现。锁等待和事物特性也有一定的关系,故这篇文章希望从锁的隔离级别和加锁的情况来介绍mysql。一、事务特性1.原子性事务是一个原子操作单元,事务中包含的所有操作要么都做,要么都不做,没有第三种情况。2.一致性事务操作前和操作后都必须满足业务规则约束,比如说A向B转账,转账前和转账后AB两个账户的总金额必须是一致的。3.隔离性...原创 2020-04-25 14:51:41 · 540 阅读 · 0 评论 -
mysql索引和explain的详解
索引原理分析索引存储结构索引是在存储引擎中实现的,也就是说不同的存储引擎,会使使用不同的索引MyISAM和InnoDB存储引擎:只支持B+ TREE索引, 也不能够更换MEMORY/HEAP存储引擎:支持HASH和BTREE索引B树图示B树是为了磁盘或其它存储设备设计的一种多叉(下面你会看到,相对于二叉,B树每个内结点有多个分支,即多叉)平衡查找树。 多叉平衡。B树和B+树的区别:...原创 2020-04-19 18:36:49 · 430 阅读 · 0 评论 -
Mysql类型处理器(通用类型的json转化)
1、我们在mysql的使用中,很多时候都需要使用类型处理器。主要可以使类型转化直接在mysql中完成转化。而不用将类型转化入侵到逻辑代码里面,可以使代码的时候更加清晰和明了。在转化的时候又有绝大部分,都是实体类转化为String类型的json的对象存入mysql数据库中。但是每个实体类都去定义一个类型转化器未免过于麻烦,我们可以将此类mysql的转化器转化用一个通用json转化的类处理来处理。下...原创 2020-04-18 22:41:49 · 760 阅读 · 0 评论 -
MySQL索引原理及查询优化
其实在工作中有去优化mysql语句,但之前优化仅仅是降到能够接受花费时间之下,并有很多可以继续提供的空间。很多时候在优化完成之后sql,也并不能向外展示。故这里将自己平时优化的sql方法记录下来,并找到一个总结优化sql的地方。索引原理mysql的创建索引其实就像是字典的目录有一定的相似之处,通过不断的缩小想要获得数据的范围来筛选出最终想要的结果。我们索引原理可以通过了解为什么数据库的索引需要...原创 2019-12-29 17:10:59 · 126 阅读 · 0 评论 -
mysql数据库各个字符集作用及更改方法
我们在使用数据库的时候,会遇到数据库的乱码问题。这篇文章就来阐述各个字符集的作用,已经更改字符集的方法。如何查看数据库的字符集 show variables like '%char%';下面就针对上面的字符集,来表示上面的字符集有什么作用。character_set_client:客户端来源数据使用的字符集,就是用户告诉服务器,客户端发过来的SQL语句是用的什么字符集,要和客户端发出...原创 2019-11-09 14:47:22 · 1095 阅读 · 0 评论 -
mysql常见函数总结
一、mysql函数是工作中极其常用的知识,但很多时候可能会经常忘记,故在在此做一个总结1、对时间的操作的函数//获取当前的时间 前一天select date_sub(CURRENT_DATE,interval 1 day)//获取当前的时间 后一天select date_sub(CURRENT_DATE,interval -1 day)//获取当前的时间 前一个月select da...原创 2019-09-02 23:53:17 · 927 阅读 · 0 评论 -
mysql排序情况总结
一、mysql排序我们在工作需要经常做一些,mysql的排序。我在这将mysql排序做一个小案例,将一部分mysql的排序情况做一个总结。如果不能找到下面对应的排序情况,可以看一下下面(5),(6),(7)排序,提供写出更加复杂情况的排序的思路。SELECT * FROM `sys_user`(1) mysql排序将null认为是最小值故,直接正序排序,将null会排在最前面位置(因为...原创 2019-09-01 22:01:48 · 529 阅读 · 0 评论