自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (2)
  • 收藏
  • 关注

原创 PostgreSQL-使用explain对SQL进行性能调优

一般针对真实开销高(actual time)的算子节点进行优化,如果认为优化器对SQL的访问路径选择有误,需要看理论评估值是否异常。方法:通过查看pg_stat_activity视图,查找耗时长的慢SQL语句,然后通过查看执行计划分析慢的原因,从而确定优化方案。输出位树形结构,节点按列缩进,同级节点一般为从上往下执行,不同级节点,右边节点为左边节点的组成部分,同级节点时间不累加。explain 用于显示SQL语言的执行计划,以及执行计划中各组成部分开销和执行时间,是用来分析SQL级的性能问题。

2024-07-09 17:05:15 510

原创 数据库-表、索引、触发器、分区表、查询语句使用注意事项

文章目录普通表、数据类型索引触发器分区表查询语句DML普通表、数据类型联机交易事务的表字段个数不超过个数N个(n<50?)批量业务表字段个数不超过500个。原因:单标字段个数越多,查询性能越差。不应使用浮点型数据类型存放金额,应使用整数型多表关联时,表示同一涵义的字段应使用相同的数据类型。原因:避免隐式转换。索引索引中所有字段长度合计不得超过2704字节。原因:B树索引的列长度不得超过缓存页面(一般为8k)的1/3。单列索引字段总长度不能超过50字节。原因:索引大小会碰撞,带来存储

2024-06-19 17:25:46 416

原创 帮您理解PostgreSQL(WAL、XLOG、CheckPoint进程、LSN、PITR、SR)

7、如果备库最新的LSN小于主库最新的LSN,那么WAL发送器会将钱一个LSN到后一个LSN之间的WAL数据发送到WAL接收器,这些WAL数据存储在主库的pg_xlog子目录的WAL段提供,最终备库重放接受到的WAL数据,在这个阶段,备库在追赶主库,被称为追赶阶段。4、备库上的WAL接收器通过write()系统调用,将接受到的WAL数据写入WAL段,并想WAL发送器返回ACK响应。7、主库WAL发送器在收到来自WAL接收器的ACK响应后,释放后端进程的锁存起,然后后端进程完成commit,。

2024-06-17 16:37:40 983

原创 MYSQL、ORACLE、PostgreSQL数据库对象层次及权限管理对比

本文为出于自己扩展、比较、图形化的思维路径自行总结归纳,可能有些细节不太准确,欢迎指正。MySQL、Oracle、PostgreSQL关系型数据库都有管理员用户、用户、权限管理、表函数索引等数据库对象,schema。但在数据库对象隶属层次上有差异和相同的地方。

2024-06-13 15:24:02 802

原创 GaussDB系统视图归纳总结及常用运维SQL

oracle系统视图对应GaussDB系统视图含义DBA_*ADM_*DBA拥有或可访问的所有对象ALL_*DB_*某用户拥有或可访问的所有对象USER_*MY_*某用户拥有的所有对象以及GaussDB 自己定义的gs_*系统表和视图因为以上原因,常用运维SQL涉及GaussDB自己的系统视图和pg的系统表和对标oracle的系统视图(缝合怪?序号系统视图1my_tables23my_indexes4567pg_class8pg_proc9。

2024-06-12 15:51:48 596

原创 PostgreSQL系统表、视图归纳总结及相关运维SQL

PostgreSQL 必知内容跟oracle数据库一样,pg数据库也有自己的系统表和视图,在查询问题的时候会涉及到。序号系统表内容1pg_class该系统表记录了数据表、索引(仍然需要参阅pg_index)、序列、视图、复合类型和一些特殊关系类型的元数据,以及其之间的关系23该系统表存储数据库的信息,每个集群一份而不是每个数据库一份4pg_index存储索引的部分信息,其它的信息大多数存储在pg_class5pg_indexes系统视图提供对数据库中每个索引有用信息的访问。

2024-06-12 14:54:27 804 2

原创 Oracle系统视图归纳总结及常用对象查询语句

Oracle 19C有2067个系统视图,但只有部分常用视图在运维或查问题中会使用到,我们可以将注意力放在常用系统视图上。(实际上我们在接触任何数据库时,都需要学习常用系统视图)1. DBA_* 表示DBA拥有的或可访问的所有对象2. ALL_* 表示某用户拥有的或可访问的所有对象3. USER_* 表示某用户拥有的所有对象4. V$* 动态性能视图。

2024-06-11 17:25:26 657

原创 sysbench工具测试PostgreSQL数据库性能步骤

sysbench介绍sysbench是一个基于LuaJIT的可脚本多线程基准测试工具。常用于数据库基准测试,但也可用于创建不涉及数据库服务器的任意复杂工作负载。sysbench除能压测数据库性能之外,还能对其他一些测试对象进行性能测试,包括CPU、内存、线程等的压测,限于篇幅,这里不详细介绍。oltp_*.lua:类似oltp的数据库基准的集合fileio:文件系统级基准测试cpu:简单的cpu基准测试memory:内存访问基准threads:基于线程的调度器基准。

2024-06-11 16:21:33 382

原创 MYSQL部分术语及原理解释(缓冲池、LRU、redo log buffer、WAL、Checkpoint、LSN)

总结来自《MySQL技术内幕 InnoDB存储引擎》 第二版。

2024-06-11 14:56:53 648

原创 Oracle数据库-重点信息查询方法

在同一个快照采样期间,数据库在线会话数。结果为true 则为RAC。用户表中分区数最多的分区。数据库分配的空间大小。或者指定schema。

2024-06-07 17:28:20 350

原创 MySQL undo日志

undo log叫做回滚日志或撤销日志,在事务执行变更操作之前需要先将相反的操作写入undo log,通过它可以让事务回滚操作,undo log也是实现多版本控制(MVCC)的基础。redo log保证了事务的持久性,而undo log保证了事务的原子性和一致性。undo日志是逻辑日志,undo日志再InnoDB使用回滚段 rollback segment,每个回滚段记录了1024哥undo log segment。

2024-06-03 16:21:01 117

原创 MySQL 慢SQL的排查分析及无法匹配索引的情况

1、SQL ordered by Rows Examined Average平均扫描记录数高,但平均返回(Rows Send avg)少说明SQL效率存在问题。复合索引是从第一个索引列开始,从左到右依次匹配,一旦某个字段不能匹配,便停止匹配,后边的索引字段不会再匹配,即使覆盖了其他索引列也无法利用索引。3、SQL ordered by Elapsed Time Average SQL执行时间超过1秒的都需要关注。可以关注 扫描数据量大的SQL,通常伴随着CPU的升高。5.查询条件使用负向查询条件:NOT!

2024-06-03 15:47:04 686

原创 MySQL数据库常见问题分析及解决方案【经验贴】

12.读写交易堆积,大量交易处于Waiting for table metadata lock状态,期间该表有新增索引的操作。解决方法:如果是普通sql,检查期间是否有ddl操作;如果是ddl报错,检查是否有慢sql或长事务,或其他ddl。解决方法:直接删除不再使用的binlog(并更新binlog的index文件),或磁盘扩容。可能的问题:存在较多慢SQL,占用数据库服务资源,影响其他普通SQL。可能的问题:新增/删除有大量分区的表引起的整库性能下降。可能的问题:网络延迟大,测试服务端与应用端的时延。

2024-05-30 15:55:33 774

原创 MySQL的redolog、binlog日志与两阶段提交(2PC)

二进制日志文件,也叫作变更日志(update log),它记录了所有更新数据库的语句(如DDL和 DML语句)并以二进制的形式保存在磁盘中,但是不包含没有修改任何数据的语句(不含查询操作。数据查询语句select、show等)。bin log是逻辑日志,记录的是执行语句的逻辑,和redis的AOP日志类似,会按顺序记录所有涉及更新数据的逻辑操作。

2024-05-30 14:36:52 881

原创 数据库性能调优思路、常用分析方法

ddl执行时会申请表对应的元数据锁,增删改查与ddl互斥,dml执行时,ddl需等待获得元数据锁,ddl与ddl之间互斥。a.使用repeatable-read隔离级别,当update、delete时执行全表扫操作,会锁全表,或者查询时某列没建索引,该语句在执行时引发了全表扫,期间无法对该表进行更新操作-解决办法:用read-commited。:针对表的大部分DDL操作(除TRUNCATE和索引维护),Mysql的内部处理相当于重建表,期间会锁表,影响对外服务,数据量越大,影响时间越长。

2024-05-29 16:57:01 715 1

原创 使用BenchmarkSQL进行PostgreSQL数据库TPCC测试注意要点

TPC基准TMC(TPC-C)是一个OLTP数据库性能的基准测试,其中测试结果tpmC的定义为每分钟系统新订单数,用来衡量OLTP的性能。

2024-05-28 15:48:21 324

原创 linux shell脚本:读取csv文件到(数组)变量

创建excel文件,分别在不同列输入不同的变量值。如下图示例,然后文件另存为ip.csv文件,上传到linux服务器,并赋予相关用户权限。本例以使用不同用户连接不同ip的系统库举例。

2024-05-21 14:37:05 197

原创 【铸兰.职场OL】如何提高技术支持效率

铸兰说:首先思想上,不少人厌恶写手册、或复盘记录工作经验,觉得浪费时间,但人脑内存就那么大,而且磁盘读取经常会找不到文件,这就不利于工作效率。,问题来了,直接把手册、链接甩出去。

2024-02-29 17:00:12 175

原创 高可用测试/灾备演练- 关注点

重点关注:

2023-08-08 12:11:11 149

原创 linux常见操作、 命令

1、ps -ef|grep XXX进程名。ps -e:显示系统当前所有的进程;|:管道命令表示同时运行。grep:表示搜索查找。

2023-07-25 21:39:19 72

原创 linux操作系统SSD磁盘IO调度算法及配置方法[特指kylin、suse]

磁盘IO调度算法由linux内核提供支持,在各种linux发行版都可以设置并适用1、查询磁盘名称lsblk2、查看具体盘的算法策略suse与kylin操作系统查看方法一致3、磁盘IO调度算法,重启失效suse与kylin操作系统查看方法一致以mq-deadline举例4、磁盘IO调度算法。

2023-07-25 21:13:01 1218

原创 获取linux操作系统磁盘IO读写速度(dd命令)

1、测磁盘纯写速度2、测磁盘纯读速度3、测磁盘读写速度。

2023-07-25 20:02:20 1287

原创 javascript js队列 push()、shift()与pop()、unshift()理解

队列:先进先出;在学习js的过程中,碰到这样一个问题:var colors=new Array();var count=colors.unshift("red","green"); //推入多个项count=colors.unshift("black"); //推入单个项var item=colors.pop(); ...

2020-01-21 10:09:03 23950 1

原创 java 所谓的值传递和引用传递

最近学校课程java上了一半,我发现我一直都不太懂值传递,引用传递什么的,这次一定要弄懂先从最开始谈吧一、什么叫做值传递与引用传递实参与形参    - 存储单元(左值)    - 存储内容(右值)根据所传递的实参的“内容”,参数传递可分为:    - 传值调用:传递实参的右值到形参单元;    - 引用调用:传递实参的左值到形参单元;    - 值-

2016-11-06 09:38:09 371

数据挖掘:概念与技术(中文第三版)

完整 456页 数据挖掘 概念与技术 分享 机械工业出版社

2017-07-10

数值分析简明教程第二版代码c++

王能超版数值分析简明教程第二版 根据流程图写代码(包括部分没有流程图的)

2017-07-06

空空如也

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

TA关注的人

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