在完整数据库备份期间运行索引碎片整理有哪些性能缺陷?有没有办法在备份开始时暂停/停止索引碎片整理?
当 frag 介于 10% 和 30% 之间时,我使用 Reorganize,当 frag 大于 30% 时,我使用 Rebuild。
在完整数据库备份期间运行索引碎片整理有哪些性能缺陷?有没有办法在备份开始时暂停/停止索引碎片整理?
当 frag 介于 10% 和 30% 之间时,我使用 Reorganize,当 frag 大于 30% 时,我使用 Rebuild。
我有 2 个 SQL Server 实例,我在其中对数据库使用合并复制。开发人员不小心同时向订阅者和发布者插入了数据。现在我在两个数据库中都有数据,但 rowguid 不同。
问:我是否可以从订阅者中删除那些具有不同 rowguid 的行,而发布者中的行保持不变?如果是这样,来自发布者的行是否会复制回订阅者但现在具有相同的 rowguid?
我想获取扩展事件 event_file 的文件路径并将其放入变量中,但我被卡住了。
这是我所拥有的:
DECLARE @ExpensiveXML XML
SET @ExpensiveXML = (SELECT CAST(xet.target_data AS xml) AS 'XML'
FROM sys.dm_xe_session_targets AS xet
JOIN sys.dm_xe_sessions AS xe
ON (xe.address = xet.event_session_address)
WHERE xe.name = '<my extended event>');
SELECT @ExpensiveXML.query('/EventFileTarget/File')
它返回:
<File name="MyFilePath.xel" />
我想只返回 MyFilePath.xel 周围没有 < File name=.../ >。
我在这里寻找方向。我需要自动化将几种不同文件类型导入 SQL Server 的过程。它们都是基于文本的文件(没有 excel),但文件的内部格式不同。有些是逗号分隔的,有些是制表符分隔的。它们都包含相同的基本信息(客户姓名、地址、电话等),但有些文件包含附加数据。我只想从每个文件中导入公共数据。因此,一些数据将在一个文件中被跳过,但在另一个文件中,所有数据都需要导入。
我打算使用 SSIS ForEach 循环,但我无法弄清楚如何处理多种文件格式。我在设置如何导入文件的连接字符串上卡住了。有没有人遇到过这个?如果是这样,你能把我推向正确的方向吗?
表大小 = 44GB(无聚集索引)
行数 = 122016576
分配给 tempdb 的磁盘空间 = 200MB
由于查询时间慢,我想为表创建一个聚集索引,所以我运行了以下查询:
USE [myDatabase]
GO
CREATE CLUSTERED INDEX [IX_Name] ON [dbo].[myTable]
(
[myColumn] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = ON, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
GO
执行 50 分钟后,我的服务器的 tempdb 文件(总共 4 个)空间不足,数据库进入“恢复中”状态大约 10 分钟。它现在已经启动并运行,但是当我特别说 SORT_IN_TEMPDB = OFF 时,我很困惑为什么 tempdb 被如此使用。
有谁知道为什么这个操作使用了这么多 tempdb 空间?
我需要查看数据库的日志备份计划。此信息位于 SQL Server Management Studio 中的什么位置?
我遇到过一个生产 SQL Server 2008 框,它有相当多的数据库,其中 PAGE_VERIFY 选项设置为 NONE。我要将 PAGE_VERIFY 选项设置为 CHECKSUM。如果我理解正确,我必须为 CHECKSUM 重建现有索引以影响它们。另外,如果我重建聚集索引,非聚集索引也将被重建。
谢谢!