数据结构与算法

拯救你那些富集不到结果的基因

数据整理 因为这个是我学生的真实数据,所以就不方便放出来给大家做示例文件了,可以只看代码,或者拿自己的数据练练手。 library(org.Hs.eg.db) library(clusterProfiler) library(dplyr) library(ggplot2) deg=read.csv("deg.csv",row.names = 1) head(deg) ##

MySQL慢查询:慢SQL定位、日志分析与优化方案

一个sql执行很慢的就叫慢sql,一般来说sql语句执行超过5s就能够算是慢sql,需要进行优化了 为何要对慢SQL进行治理 每一个SQL都需要消耗一定的I/O资源,SQL执行的快慢直接决定了资源被占用时间的长短。假设业务要求每秒需要完成100条SQL的执行,而其中10条SQL执行时间长导致每秒只能完成90条SQL,所有新的SQL将进入排队等待,直接影响业务 治理的优先级 master数据库

SQL注入专题(一)

一、数据库基本信息探测 探测数据库类型是SQL注入基本信息的一步,还有一些基本信息需要探测清楚,包括当前用户名、当前用户权限、当前数据库名、当前数据库表信息、当前数据库列信息。 二、手工注入-------使用Mysql特有库注出表名、列名、字段的值 使用数据库注出所有表名: union select 1,(select group_concat(table_name) from in

count(*) count(1)与count(字段)的区别

53fe20266ffc413a86c3b9abc9642dab.png 上翻译: 1、COUNT(expr) ,返回SELECT语句检索的行中expr的值不为NULL的数量。结果是一个BIGINT值。 2、如果查询结果没有命中任何记录,则返回0 3、但是,值得注意的是,COUNT(*) 的统计结果中,会包含值为NULL的行数。 那么问题来了count(*) 、count(1) 、

Springboot——多数据源事务、切换数据源+事务

前言 项目有多个数据源,根据配置文件配置的连接数来自动生成多数据源配置,并且使用 aop切换数据源,使用的是 AbstractRoutingDataSource 重写 determineCurrentLookupKey 方法。 在切换数据源之前 @Transactional 先执行,此时会去获取数据源,如果不使用用前置通知(@Before),那么此时数据源还没有切换就会获取默认的数据源 ,这种情况

TCGAbiolinks包报错:“Can't subset columns past the end”

2022年4月,TCGA数据库进行了一次更新,原来的HT-RNASeq数据被替换成了Star-RNASeq,这导致原有的TCGAbiolinks包能正常下载数据,但是不能用GDCprepare函数正常合并下载的数据集。如果用之前版本的包,在尝试这一步的时候会报错。 ERROR: Can't subset columns past the end 解决的办法就是升级TCGABiolinks这个包,

MyBatis-Plus执行SQL分析打印

一、说明 1、本文资料来自MyBatis-Plus官网 2、该功能依赖 p6spy 组件,完美的输出打印 SQL 及执行时长 3.1.0 以上版本 3、示例工程 二、操作步骤 2.1 p6spy 依赖引入 <dependency> <groupId>p6spy</groupId> <artifactId>p6spy</artifactI

mysql客户端连接很慢的解决办法

一般我们连接mysql,要么是通过终端直接连接,要么是使用navicat 这种软件连接,有时候会发生连接很慢的情况,大致分三种 1.远程连接mysql很慢,每次连接需要3秒及以上 原因是: 当远程访问mysql时, mysql会解析域名, 所以会导致访问速度很慢, 会有2,3秒延时! 原因是由于mysql对连接的客户端进行DNS反向解析 解决办法: 修改mysql的配置文件,在配置文件加上下面这个