我正在学习SQL server中的内存优化。在我学习PAGELATCH、等待.But的过程中,我不知道它是如何发生的,我也不知道如何优化测试它。
有人能给我一个示例数据,这将导致分页,使我能够理解它,并测试它与和不使用tempdb内存优化。
发布于 2023-03-06 17:04:18
共享(_SH)锁存并不会真正成为tempdb中争用的原因。您可能会看到围绕_EX或_UP锁存的争用。
要查看_UP锁存,可以使用像SQL查询压力这样的工具来生成许多会话,这样做如下:
SELECT
m.*
INTO #m
FROM sys.messages AS m
WHERE m.language_id = 1033;要查看_EX锁存,只需在多个会话中创建一个临时表:
CREATE TABLE
#t
(
a bigint NOT NULL
PRIMARY KEY CLUSTERED,
b integer NULL,
c varchar(20) NULL,
INDEX n (b)
WHERE b IS NOT NULL
);这取决于您需要计算出要生成多少个会话来查看争用,并且在很大程度上取决于CPU的数量和所创建的tempdb文件的数量。
https://dba.stackexchange.com/questions/324406
复制相似问题