数据结构与算法
MySQL优化(索引与查询优化)
MySQL优化(索引与查询优化)
1. 如何定位及优化SQL语句的性能问题?
对于低性能的SQL语句的定位,最重要也是最有效的方法就是使用执行计划,MySQL提供了explain命令来查看语句的执行计划。 我们知道,不管是哪种数据库,或者是哪种数据库引擎,在对一条SQL语句进行执行的过程中都会做很多相关的优化,对于查询语句,最重要的优化方式就是使用索引。
而执行计划,就是显示数据库引擎对于SQ
Django笔记二十四之数据库函数之比较和转换函数
这一篇笔记开始介绍几种数据库函数,以下是几种函数及其作用
Cast 转换类型
Coalesce 优先取值
Greatest 返回较大值
Nullif 值相同返回 None
1、model 准备
这一篇笔记我们主要用到 Author 和 Entry model 作为示例,下面的是 Author model:
class Author(models.Model):
name = model
MySql存储引擎使用及管理
一、查看支持的数据库引擎
Engine:引擎名称
Support:表示该数据库是否支持该引擎,DEFAULT为默认使用的引擎
Comment:引擎的功能描述
Transactions:是否支持事务
XA:是否支持事务回滚
Savepoints:是否支持外键
mysql> show engines;
+--------------------+---------+-------
windows版mysql8.0安装详解
windows版mysql8.0安装详解
下载mysql8.0下载地址:
下载完成后将其解压到自定义目录下,我所有的工具都保存在D:\tools,解压完成后会看见以下目录:
随后,配置环境变量(我的电脑点右键,然后点属性,然后点击环境变量),步骤如下:
此
MySQL 崩溃恢复过程分析
天有不测风云,数据库有旦夕祸福。
前面写 Redo 日志的文章介绍过,数据库正常运行时,Redo 日志就是个累赘。
现在,终于到了 Redo 日志扬眉吐气,大显身手的时候了。
本文我们一起来看看,MySQL 在崩溃恢复过程中都干了哪些事情,Redo 日志又是怎么大显身手的。
本文介绍的崩溃恢复过程,包含 server 层和 InnoDB,不涉及其它存储引擎,内容基于 MySQL 8.0.29 源
set数据结构/map数据结构(ES6)
ES6 set数据结构/map数据结构
ES6中新增,set集合和map集合就是一种数据的存储结构(在ES6之前数据存储结构只有array,object),不同的场景使用不同的集合去存储数据
1.set集合
Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。
语法:
//创建一个set集合,传参为一个可迭代的对象
const s1 = new Set(iterable
MyBatis 流式查询
基本概念
流式查询指的是查询成功后不是返回一个集合而是返回一个迭代器,应用每次从迭代器取一条查询结果。流式查询的好处是能够降低内存使用。
如果没有流式查询,我们想要从数据库取 1000 万条记录而又没有足够的内存时,就不得不分页查询,而分页查询效率取决于表设计,如果设计的不好,就无法执行高效的分页查询。因此流式查询是一个数据库访问框架必须具备的功能。
流式查询的过程当中,数据库连接是保持打开状态的
mysql生成千万级数据
1.生成数据需要的工具
mysql
version:8.0.25
mysql workbench
2.生成数据的步骤
1.创建表
2.创建存储过程
3.调用存储过程
3.具体步骤
3.1创建表
create table data_test(
id int not null auto_increment primary key comment '主键',
c1 varcha
SpringBoot整合SpringSecurity
先说一下SpringSecurity是干什么的,SpringSecurity主要作用有2方面:认证、授权。
认证:Authentication, 用户认证就是判断一个用户的身份是否合法的过程,用户去访问系统资源时系统要求验证用户的身份信息,身份合法方可继续访问,不合法则拒绝访问。常见的用户身份认证方式有:用户名密码登录,二维码登录,手机短信登录,指纹认证等方式。
授权: Authorize,授权