自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(401)
  • 收藏
  • 关注

原创 postgresql的死锁检测机制

死锁检测,是pg的一种自动检测机制,可以发现两个或者多个session之间对互斥资源的申请造成的死锁,并且可以随机将其中一个事务回滚掉,以解除死锁。特殊情况下,如果我们想定位死锁问题,我们可以先调大这个值,让因死锁而“挂起“的会话,维持“挂起”状态的时间更长点,以便我们定位具体SQL。死锁只有在锁存在的情况下才会发生,所以缓解死锁的一个策略就是减少锁的使用,比如说避免大事务,尽量减少显式锁的使用,减小锁的粒度等。一般我们要确保使用数据的所有应用程序,以一致的顺序获取多个对象上的锁,防止出现互相等待的情况。.

2022-07-29 14:07:13 336

原创 数据库术语中的基数和选择性

在数据库中,某一列的唯一键(distinct Keys)的数量叫作基数。比如性别列,该列只有男女之分,所以这一列基数是2。主键列的基数等于表的总行数。查看某个列的基数。选择性列的基数与表中总行数的比值再乘以100%就是某个列的选择性。列的选择性可以衡量数据库索引能够帮助缩小对表中特定值的搜索范围的程度。查看某个列的选择性。我们知道索引最重要的目的之一是尽可能地缩小匹配行的初始候选值,从而减少io,提升查询性能。所以通常来说索引的选择性越高则查询效率越高,因为选择性高的索引可以让数据库在查找时

2022-06-15 18:31:36 224 1

原创 MySQL的执行计划key_len

mysql explain key_len的含义

2022-05-13 16:00:48 495

原创 vue改变当前url query值,但不发生跳转

方法:this.$router.push({ query: { activeKey: 'all', },});

2022-04-19 17:00:53 701

原创 postgresql之提升distinct查询性能

在pg中,distinct关键字与select语句一起使用,用于去除重复记录。然而postgresql目前缺乏从有序索引中有效提取唯一值列表的能力, 它需要扫描整个索引来找到唯一的值。随着表的增长,这个操作会很慢。对一个大表(几百万行甚至更大)的某个字段进行distinct操作,其执行计划可能如下图所示正如我们所知,HashAggregate通过在内存构建数据的哈希表来对数据进行分组,而这通常会打来较大的性能损耗。针对distinct或group by慢的问题,mysql中提供了Loo.

2022-04-02 22:43:14 1398

原创 JSON.parse解析json字符串遇换行符报错问题解决

如下所示字符串,使用JSON.parse解析时,报错。var json='{"CityName":"西安","CityOrder":"物料::WAA010001\n物料名称::轴承\n规格型号::HRB1209\n供应商::东莞市耀光化工贸易有限公司\n采购员::\n请购部门:: \n批号::JH201803250001"}';解决:字符串需要进行转义。var jsonObj=JSON.parse(json.replace(/\n/g,"\\n").replace(/\r/g,"...

2022-03-29 13:36:22 1158

原创 git 撤销git add

如果是撤销所有的已经add的文件:git reset HEAD .如果是撤销某个文件或文件夹:git reset HEAD -filename

2022-03-11 18:39:54 260

原创 js计算数组中某值的出现次数

解决:结合reduce实现const countOccurences = (arr, value) => arr.reduce((a, v) => v === value ? a + 1 : a + 0, 0);countOccurences([1,3,4,6,1,3,5,6,3,1],1));参考:javascript计算数组中某值的出现次数_Xiao_Spring的博客-CSDN博客...

2022-02-23 13:50:26 346

原创 js 获取对象数组中某一属性所组成的list

比如有如数组如下:[{a:1,b:2,c:3},{a:4,b:5,c:6},{a:7,b:8,c:9}]我想获取这个数组的 a 属性所组成的list,返回 1,4,7 。有多种方法比如for 、forEach、filter、map。map怎么用?var data = [ {a:1,b:2,c:3}, {a:4,b:5,c:6}, {a:7,b:8,c:9} ];// 使用了 ES6 语法var a_list = data.map(item => item.a)

2022-02-23 13:43:03 957

原创 给el-table表头加必选星号

效果:解决方法:1. 在el-table-column 上添加render-header属性。render-header指定列标题 Label 区域渲染使用的 Function。<el-table-column label="地域" align="center" :render-header="addRedStar"></el-table-column>2.addRedStar函数。 addRedStar(h, { column }) { // 给

2022-02-23 11:23:24 736 1

原创 修改ElementUI默认表单项el-form-item间距

ElementUI的表单组建el-form的表单项之间的间距怎么改?解决:表单组件之间的间距可以在CSS中设置。.el-form-item{ margin-bottom: 0px;}示例:修改后:

2022-02-23 11:05:52 6203

原创 libc.so.6: version `GLIBC_2.18‘ not found错误

运行:strings /lib64/libc.so.6 |grep GLIBC_2.18发现没有GLIBC_2.181.下载wget http://mirrors.ustc.edu.cn/gnu/libc/glibc-2.18.tar.gz2.解压tar -zxvf glibc-2.18.tar.gz3.进入解压文件夹,创建文件夹build。cd glibc-2.18mkdir build4.编译。cd build../configure --prefix=/

2022-01-12 10:12:19 1223

原创 MongoDB之稀疏索引

稀疏索引(或者称间隙索引):sparse index, 就是只包含有索引字段的文档的条目,跳过索引键不存在的文档。比如如下所示条目:<span style="color:#000000"><span style="background-color:#ffffff"><code><span style="color:#e6c07b">test</span>:PRIMARY>db.scores.<span style="co...

2022-01-10 16:35:22 635

原创 python 虚拟环境

1、安装virtualenv。pip3 install virtualenv2、查看版本,确认安装成功。virtualenv --version3、切到需要创建虚拟环境的项目文件根目录下cd /soft/tuya_database_backup4、创建文件夹。mkdir venv5、创建python虚拟环境并激活。virtualenv venvsource ./venv/bin/activate6、在该虚拟环境下安

2021-12-07 11:22:54 556

原创 MySQL查询默认不区分大小

mysql的查询默认是不区分大小写的。看个例子:可以看到使用如下语句,查询到了同一条记录。select * from tba where name = 'test';select * from tba where name = 'TEST';mysql的表查询大小写是否敏感,取决于字段的collate设置。我们看下这张表的charset和collate。charset是utf8,而utf8的默认collate规则是utf8_general_ci。(可通过show cha..

2021-11-24 20:02:34 624

原创 zipimport.ZipImportError: can‘t decompress data; zlib not available

python安装报错:zipimport.ZipImportError: can't decompress data; zlib not available解决:yum -y install zlib*

2021-11-13 18:16:37 2071

原创 ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory

执行python脚本,报错:ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory。看意思是缺少libpython3.6m.so.1.0这个动态库。在机器上查找这个库:sudo find / -name libpython3.6m.so.1.0如果在本地能找到,就将其复制到/usr/lib64目录下。cp libpython3.6m.so.1.0 /usr

2021-11-13 11:14:33 3976

原创 yum install报错“Error: rpmdb open failed“

yum安装包,提示错误“Error: rpmdb open failed”。解决:rpm --rebuilddb

2021-11-12 17:06:04 826

原创 psutil/_psutil_common.c:9:20: fatal error: Python.h: No such file or directory

Centos7 使用pip安装psutil时报错,提示: psutil/_psutil_common.c:9:20: fatal error: Python.h: No such file or directory #include <Python.h> ^ compilation terminated. error: command 'gcc' failed with exit status 1解决:...

2021-11-12 17:04:00 1061

原创 MongoDB之rotate log

当mongodb实例启动时指定logpath或systemLog.path参数,mongod和mongos实例将向日志文件中持续的记录数据库的活动日志。而MongoDB默认情况下不会自动的切换日志的,这将会导致服务日志日渐增大,在业务繁忙的场景,日志的增长量会非常大。持续增长的日志文件,不仅占用系统磁盘,并且还会拖慢服务器的运行速度。所以我们需要能对服务日志进行日志切换。在MongoDB中,切换日志的触发条件有两种:1、admin库下执行logRotate命令。useadmin...

2021-11-11 19:45:29 446

原创 PostgreSQL之双冒号(::)的含义

对于一些从mysql转过来或不熟悉pg的开发者来说,可能在看到SQL中使用"::"符号时会表示疑问,这个符号表示什么含义呢?近期有被问到这个问题,所以还是记录一下。"::" 符号其实是一个强制类型转换符,作用等同于CAST。在很多情况下,我们需要将一种数据类型的值转换为另一种数据类型。那么我们就可以使用它来进行转换。"::"的语法格式为:expression::type用法示例:postgres=#SELECT'100'::INTEGER,'01-O...

2021-11-07 11:41:06 4686 1

原创 js格式化json的代码demo

方法:1、先将JSON字符串串转化为json对象。var jsonString = '{"name":"王小二","age":25.2,"birthday":"1990-01-01"}' //普通json字符串var jsonObj = JSON.parse(jsonString) //把json字符串转为json对象2、使用JSON.stringify对json对象进行格式化,其中4指的是代码缩进量。JSON.stringify(jsonObj, null, 4)...

2021-10-16 14:21:50 142

原创 MongoDB部分索引(Partial Indexes)和稀疏索引(Sparse Indexes)的区别

参考文档:​​​​​​mongoose - What is difference between partial indexes and sparse indexes mongodb? - Stack Overflow稀疏索引稀疏索引只包含具有索引字段的文档(包含索引字段是空值的文档),它将跳过任何没有索引字段的文档。索引是“稀疏的”。非稀疏索引包含集合中的所有文档,为那些不包含索引字段的文档存储空值。假设你有包含如下文档的集合:{ _id: 1, firstname: 'John

2021-10-14 11:21:07 189

原创 python json.dumps 中文

我们知道python 中json.dumps()函数用于将一个Python数据类型列表进行json格式的编码,换句话说json.dumps()函数是将字典转化为字符串。比如:import jsondic = {"name":"James"}print(json.dumps(dic))但是如果dict中包含中文,输出的str就是保护乱码的字符串。如:import jsondic = {"name":"哈哈"}print(json.dumps(dic))'''输出..

2021-10-08 17:01:14 760

原创 PostgreSQL之外键约束

外键又称外键约束,Foreign key constraint。外键是一个表中,用于标识另一张表中行的一个字段或多个字段。包含外键的表称为引用表,外键引用表称为被引用表。所谓外键约束是指引用字段必须在被引用字段中出现。被引用字段需要是唯一约束或主键。外键约束维护引用表和被引用表之间的参照完整性(referential integrity)。外键约束可以在创建表时定义,也可以在表创建后通过alter table语句定义。定义外键约束的完整语法<span style="col..

2021-09-28 17:51:19 3545

原创 MongoDB objectId和时间互相转换

MongoDB默认使用_id字段作为主键,类型为ObjectID。Objectid的生成一定的规则,Objectid有12位: 前4位是时间戳 中间5位是随机值 后3位是递增计数器 基于这个特性,我们可以通过_id字段的值来还原当时的时间。import timefrom bson.objectid import ObjectIdimport datetimedef time2id(from_datetime=None, time_delta=None):

2021-09-23 18:09:33 1188

原创 element ui el-radio-group 增加垂直排列

使用el-radio-group, 只能进行水平排列。如:像让其垂直排列怎么办?解决:可以通过添加div实现垂直排列<template><el-radio-group v-model="selectMod" size="small" type="vertical"><div v-for= index of 3> <el-radio-button label="第一列"></el-radio-button>.

2021-07-31 15:23:05 5677

原创 MongoDB : applyOps: not authorized on admin to execute command

参考:https://stackoverflow.com/questions/55208028/mongodb-applyops-not-authorized-on-admin-to-execute-command解决:use admindb.createRole( { role: "interalUseOnlyOplogRestore", privileges: [ { resource: { anyResource: true }, action

2021-07-26 11:21:45 130

原创 Mongo shell不会解析连接串中的readPreference参数

可见issue:https://jira.mongodb.org/browse/SERVER-48769如题,mongo shell不会解析连接串中的readPreference参数。比如:启动一个mongo shell,在URI中设置readPreference=secondary的。提示符显示它连接到主服务器。./mongo "mongodb://xxx@xxxx@host1:27017,host2:27017,host3:27017/admin?replicaSet=r

2021-07-22 10:00:16 442

原创 centOS 安装MongoDB客户端

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.6.tgzcd /usr/local解压sudo tar -zxvf /tmp/mongodb-linux-x86_64-4.0.6.tgz重命名sudo mv mongodb-linux-x86_64-4.0.6 mongodb使用mongo客户端cd /usr/local/mongodb/bin./mongo "mongodb://xxx:xx.

2021-07-19 19:58:08 887

原创 zlib.error: Error -5 while decompressing data: incomplete or truncated stream

参考:https://stackoverflow.com/questions/32367005/zlib-error-error-5-while-decompressing-data-incomplete-or-truncated-stream-inmysql业务表中有一个字段longtext类型,数据太大,所以决定使用zlib压缩之后存储到mysql中。在存入的时候,使用zlib.compress进行压缩,在查询的时候,使用zlib.decompress进行解压缩。压缩: compres

2021-07-16 15:41:11 1317

原创 mongodb单机实例开启oplog

参考:https://www.cnblogs.com/xuliuzai/p/9643128.htmlMongoDB的副本集有一个数据结构oplog,里面存储了primary节点所有写操作。但是单实例没有这个结构,那么单台MongoDB实例怎么开启oplog?方法:以副本集方式启动实例,在local数据库或admin数据库执行初始化副本集的脚本,rs.initiate()。一、以副本集方式启动实例:添加副本集参数(replSet=??)比如:./mongod --dbpath /u

2021-07-07 18:22:54 467

原创 Pymongo 需要显示关闭连接吗?

参考:https://stackoverflow.com/questions/19938153/do-i-need-to-explicitly-close-connectionhttps://stackoverflow.com/questions/18401015/how-to-close-a-mongodb-python-connection

2021-06-24 12:01:42 816

原创 pymongo date类型处理

query = '{ "ord_date": { "$gte": { "$date": "2020-03-20T" } } }'改写json_util.loads方法,使之json_util.dumps("")

2021-06-10 10:02:58 454

原创 pymongo json_util

参考:https://pymongo.readthedocs.io/en/stable/api/bson/json_util.html

2021-06-08 15:26:13 128

原创 Mac安装Homebrew

1、安装脚本/usr/bin/ruby -e "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install)"

2021-06-03 14:54:34 54

原创 postgresql之ssl

1、PostgreSql之SSL ?PostgreSQL支持使用SSL连接加密客户端/服务器通信,以提高链路安全性。这要求在客户端和服务器系统上都安装OpenSSL,并且在构建时启用PostgreSQL中的ssl支持(使用源码安装时的--with-openssl参数)。2、什么是OpenSSL?OpenSSL是一个工具包,用于Transport Layer Security(TLS)和Secure Sockets Layer(SSL)协议。它也是一个通用的密码学库。Open...

2021-05-29 16:41:54 1087

原创 webstorm 关闭eslint提示

1、选择Preferences2、搜索ESlint,选择Disable ESLint。

2021-05-26 11:27:29 563

原创 value=“btnMsg“ conflicts with v-model on the same element because the latter already expands to

vue 项目,运行时报错:- :value="btnMsg" conflicts with v-model on the same element because the latter already expands to a value binding internally解释::value="btnMsg", 与同一元素上的v-model冲突,因为后者已在内部扩展为值绑定。出错代码:<input class="test-btn ui-fr" type="button" nam.

2021-05-26 11:17:31 199

原创 Error: rpmdb open failed 解决方法

解决:rpm --rebuilddbyum clean all

2021-05-20 19:41:13 100

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除