- 博客(10)
- 收藏
- 关注
原创 业务高峰期,生产环境的 MySQL 压力太大,没法正常响应,需要短期内、临时性地提升一些性能,可用的方法有哪些?
第一种方法:先处理掉那些占着连接但是不工作的线程。第二种方法:尽量减少短链接消耗,一种可能的做法,是让数据库跳过权限验证阶段:解决办法:跳过权限验证的方法是:重启数据库,并使用–skip-grant-tables 参数启动。这样,整个 MySQL 会跳过所有的权限验证阶段,包括连接过程和语句执行过程在内。风险极高,是我特别不建议使用的方案。尤其你的库外网可访问的话,就更不能这么做了。在 MySQL 8.0 版本里,如果你启用–skip-grant-tables 参数,MySQL 会默认把 --sk..
2022-05-26 10:19:26 550
原创 普通索引和唯一索引对查询语句和更新语句的性能影响
查询过程假设,执行查询的语句是 select id from T where k=5。这个查询语句在索引树上查找的过程,先是通过 B+ 树从树根开始,按层搜索到叶子节点,也就是图中右下角的这个数据页,然后可以认为数据页内部通过二分法来定位记录。对于普通索引来说,查找到满足条件的第一个记录 (5,500) 后,需要查找下一个记录,直到碰到第一个不满足 k=5 条件的记录。对于唯一索引来说,由于索引定义了唯一性,查找到第一个满足条件的记录后,就会停止继续检索。那么,这个不同带来的性能差距会有多少呢.
2022-05-02 20:40:52 701
转载 常见的排序算法及其复杂度分析
1.常见算法分类十种常见排序算法一般分为以下几种:非线性时间比较类排序:交换类排序(快速排序和冒泡排序)插入类排序(简单插入排序和希尔排序)选择类排序(简单选择排序和堆排序)归并排序(二路归并排序和多路归并排序);线性时间非比较类排序:计数排序基数排序桶排序。总结:(1)在比较类排序中,归并排序号称最快,其次是快速排序和堆排序,两者不相伯仲,但是有一点需要注意,数据初始排序状态对堆排序不会产生太大的影响,而快速排序却恰恰相反。(2)线性时间非比较类排序一般要优于非.
2022-03-28 15:23:47 16962 1
转载 一条查询语句一直很慢,如何排查?
一条查询语句一直很慢,如何排查?EXPLAIN用法和结果分析1.EXPLAIN简介使用EXPLAIN关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。➤ 通过EXPLAIN,我们可以分析出以下结果:表的读取顺序数据读取操作的操作类型哪些索引可以使用哪些索引被实际使用表之间的引用每张表有多少行被优化器查询➤ 使用方式如下:EXPLAIN +SQL语句EXPLAIN SELECT * FROM t1执行计
2022-03-28 00:16:45 1306 1
原创 本科生事务管理系统数据库的设计与部分实现
一.选择一种主流数据库管理系统产品二.用基于实体联系的规范化设计方法进行以下系统的设计,并做部分实现三.用基于3NF的数据库设计方法为系统做数据库逻辑结构设计。
2022-03-18 09:36:35 4298
原创 基础知识及函数介绍
Python基础知识及函数介绍title()以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写;要将字符串改为全部大写或者全部小写可以用upper()和lower();Python用加号(+)来合并字符串;要在字符串中添加制表符,可使用字符组合\t,要在字符串中添加换行符,可使用字符组合\n;要确保字符串末尾没有空白,可使用方法rstrip(),但这种删除只是暂时的,要永久删除这个字符串中的空白,必须将删除操作的结果存回到变量中,剔除字符串开头的空白,或同时删除字符
2022-03-18 08:29:59 163
原创 MySQL 基本查询语句
MySQL基本查询语句表示例idnamepriceauthorstockimg_path1java从入门到放弃80.00国哥7static/img/default.jpg2数据结构与算法78.50严敏君10static/img/default.jpg检索单个列select namefrom t_book;检索多个列select name, pricefrom t_book;检索所有列select *from t_book;
2022-03-18 00:13:02 1014
原创 二叉搜索树的相关操作
二叉搜索树的概念二叉搜索树又称二叉排序树,它或者是一颗空树,或者是具有以下性质的二叉树若它的左子树不为空,则左子树上的所有结点的值都小于根结点的值。若它的右子树不为空,则右子树上的所有结点的值都大于根节点的值。它的左右子树也分别为二叉搜索树。二叉搜索树的数据结构(同普通二叉树)typedef struct TreeNode{ char data; struct TreeNode* lchild; struct TreeNode* rchild;};二叉搜索树的创建templ
2022-03-13 22:55:32 1846
原创 JVM 常规基础知识整理
JVM学习笔记二、Java内存区域与内存溢出异常2.2 运行时数据区域2.2.1 程序计数器(线程私有) 程序计数器是一个较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储,称这类内存区域为“线程私有”的内存。2.2.2 Java虚拟机栈(线程私有) 虚拟机栈描述的是Java方法执行的线程内存模型:每个方法被执行的时候,Java虚拟机都会同步创建一个栈帧用于存
2022-03-13 11:49:23 1155
原创 AcWing算法题常用代码模板
一、基础算法1、常用代码模板快速排序算法模板—— 模板题 AcWing 785. 快速排序算法步骤: ①确定分界点 ②调整区间 ③递归处理左右两段Tips: ①如果输入数据量比较大的话,用scanf输入更快,不要使用cin。 ②只要背诵一种万能模板即可避开所有边界问题。 ③考试时一般不会用到快排,面试时喜欢考察。 ④ #include<bits/stdc++.h>包含了目前c++所包含的所有头文件 。 ⑤分治一般用不到,只要掌握快速排序和归并排序就行。
2021-11-18 10:19:08 6902 9
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人