SQL语句运行很慢一般分为两种情况: 首先是大多数情况很正常,偶尔会很慢,有可能是数据库在刷新脏页,比如是redo log 写满了需要同步到磁盘,或者是执行的时候遇到锁,我们可以用 show processlist这个命令来查看当前的状态。这种情况下我们不需要对SQL语句进行优化。 然后是某一条 S ...
分类:
数据库 时间:
2020-07-04 21:03:15
阅读次数:
90
#前言 我们都知道,学安全,懂SQL注入是重中之重,因为即使是现在SQL注入漏洞依然存在,只是相对于之前现在挖SQL注入变的困难了。而且知识点比较多,所以在这里总结一下。通过构造有缺陷的代码,来理解常见的几种SQL注入。本文只是讲解几种注入原理,没有详细的利用过程。 如果想要了解Access的详细手 ...
分类:
数据库 时间:
2020-07-04 21:01:35
阅读次数:
85
案例一:条件字段函数操作 假设你现在维护了一个交易系统,其中交易记录表 tradelog 包含交易流水号(tradeid)、交易员 id(operator)、交易时间(t_modified)等字段。为了便于描述,我们先忽略其他字段。这个表的建表语句如下: mysql> CREATE TABLE `t ...
分类:
数据库 时间:
2020-07-04 18:48:50
阅读次数:
75
在输入框中随便输入一个值,点击提交,响应包中发现hint提示 当存在md5($password,true)时,我们可以通过传递ffifdyop,让sql语句where后面语句变成password = 'xxxx' or true,达到永真,相当于万能密码 具体原理参考文章:https://blog. ...
分类:
其他好文 时间:
2020-07-04 16:48:04
阅读次数:
79
本文不涉及复杂的底层数据结构,通过explain解释SQL,并根据可能出现的情况,来做具体的优化,使百万级、千万级数据表关联查询第一页结果能在2秒内完成(真实业务告警系统优化结果)。 希望读者能够理解SQL的执行过程,并根据过程优化,走上自己的"成金之路" 需要优化的查询: 使用explain出现了 ...
分类:
数据库 时间:
2020-07-04 15:20:34
阅读次数:
97
说明 Mysql的查询讯日志是Mysql提供的一种日志记录,它用来记录在Mysql中响应时间超过阈值的语句 具体指运行时间超过long_query_time值得SQL,则会被记录到慢查询日志中。long_query_time的默认为10,意识是运行10秒以上的语句。 由它来看那些SQL语句超出了我们 ...
分类:
数据库 时间:
2020-07-04 13:41:52
阅读次数:
82
sql语句补充:数据行 l临时表: select * from tb where id <10; 指定映射: select id ,name 1, sum(x) /count() 条件: case when id >8 then 1 else 0 end 三元运算: if(is null(xx),0 ...
分类:
数据库 时间:
2020-07-04 01:07:23
阅读次数:
77
pymysql模块: pip3 install pymysql -i https://pypi.douban.com/simple Python模块:对数据库进行操作(SQL语句) 1. Python实现用户登录 2. MySQL保存数据 - 连接、关闭(游标) - execute() -- SQL ...
分类:
数据库 时间:
2020-07-03 23:23:06
阅读次数:
81
1、 mybati默认开启一级缓存(同一个session内缓存) 2、 mybatis一级缓存命中原则(一级缓存指的是同一个sqlsession内) 1) StatementId必须相同(即xml中的<select id=””>中的id需相同) 2) 查询参数必须相同(传递给sql语句中的有用的参数 ...
分类:
其他好文 时间:
2020-07-03 19:53:44
阅读次数:
93
创建表:CREATE TABLE T_Person(FName VARCHAR(20),FAge NUMBER(10) DEFAULT '20',FId INT NOT NULL,PRIMARY KEY('FId'))CREATE TABLE T_Employee(EName VARCHAR(20) ...
分类:
数据库 时间:
2020-07-03 15:51:12
阅读次数:
73