小编Han*_*non的帖子

针对实时 SQL Server 数据库运行的 Avamar SQL Agent

我们使用一家大公司作为我们的服务提供商。

那家服务公司的技术人员正在非常努力地安装一种叫做 的东西Avamar SQL Agent,据称它将用于替换我旧的可靠的完整、差异和事务日志备份。有人告诉我,它会不断监视 mdf、ndf 和 ldf 文件的任何更改,然后将更改的项目(页面、???)写入某处 (???)。

一旦新技术得到证实,我就完全支持新技术,但我对这种方法持怀疑态度,即我将不再需要采用 SQL Server 本地压缩备份(同样是完整、差异和 tlog)。

到目前为止,我已经采取的立场是,除非并且直到他们能够通过测试向我证明它不会弄乱我的 mdf、ndf 和 ldf 文件并且仍然可以恢复,否则我不会祝福这次冒险。在这里,我不知道什么或谁会做恢复本身……它是 SQL Server 恢复的某种派生,一些 Avamar 恢复,某种组合等。

有没有人对这个产品有任何经验?

sql-server backup transaction-log

5
推荐指数
1
解决办法
4156
查看次数

将生成的系列与选择中的每一行结合起来

下面的选择返回我所有用户拥有的所有项目的数组。

WITH user_projects AS
(SELECT
  u.id as user_id
  ,COALESCE(array_agg(DISTINCT pa.project_id), '{0}'::integer[]) as project_ids
FROM users u
LEFT JOIN project_assignments pa on pa.user_creator_id = u.id
GROUP BY u.id
)

user: 1, project_ids: {1, 2}
user: 2, project_ids: {3, 4}
Run Code Online (Sandbox Code Playgroud)

使用该选择,我想进行报告,该报告将为每个用户显示 12 个月的摘要。

SELECT
  to_char(pk.created_at,'Mon') as mon
 ,extract(year from pk.created_at) as yyyy
 ,up.user_id
 ,COALESCE(count(distinct pk.keyword_id), 0) as total_keywords
FROM user_projects up
LEFT JOIN project_keywords pk on pk.project_id = ANY(up.project_ids::int[])
GROUP BY up.user_id, up.project_ids, 1, 2
Run Code Online (Sandbox Code Playgroud)

输出:

 mon: sept, yyyy: 2014, user_id: 1, …
Run Code Online (Sandbox Code Playgroud)

postgresql join

5
推荐指数
1
解决办法
7284
查看次数

任何作业完成时执行 SP

我在服务器上有很多 SQL Server 作业。每当完成任何作业执行时,我都需要执行 SP。一种困难的方法是在每个调用该 SP 的作业上创建一个步骤。

有没有简单的方法可以做到这一点?作业完成后,SQL Server 是否执行任何 SP 或任何内容?

sql-server sql-server-2012 sql-server-agent

5
推荐指数
1
解决办法
1121
查看次数

从 SQL Server 2012 迁移到 SQL Server 2014 时 SQL Server 性能变慢

我们正在尝试在 Windows 2012 R2 操作系统上从 SQL Server 2012 迁移到 SQL Server 2014。

升级后,我们正在进行性能测试,并观察到仅从一个表(根本没有连接)运行简单查询的巨大差异。

该查询在 SQL Server 2012 中执行时间为 4 秒,但在 SQL Server 2014 中执行时间超过 1 分钟。

SQL Server 安装在 2 个不同的 VM(不同的 IP 地址)上。他们在每台机器上只有一个 SQL Server 实例。

两台机器之间的处理器/内存/硬盘空间相同。

这些机器安装了相同的应用程序。我们直接从 SQL Server Management Studio 运行相同的选择查询。

performance sql-server upgrade sql-server-2012 sql-server-2014

5
推荐指数
1
解决办法
2万
查看次数

SQL Server 2014 LocalDB 中的 SQLCMD.EXE 在哪里或如何安装?

在安装了 SQL Server LocalDB 2014 的机器上,我正在寻找 SQLCMD.EXE 文件,但在任何地方都找不到它。有没有办法单独安装?

不幸的是,我不是机器的本地管理员,所以我不喜欢 MSI ...

找到此链接https://www.microsoft.com/en-us/download/confirmation.aspx?id=36433,但不能使用 MSI ... 也许复制可执行文件和 dll 可以解决问题。

C:\Program Files\Microsoft SQL Server\110\Tools\Binn 从安装了 SSMS 的另一台计算机复制文件 SQLCMD.EXE、BATCHPARSER.DLL 和 SQLCMD.RLL 后,我仍然收到错误:

Microsoft SQL Server Native Client 11.0:未找到数据源名称且未指定默认驱动程序。

运行sqlcmd -S np:\\.\pipe\LOCALDB#F8040C8F\tsql\query

sql-server sqlcmd sql-server-localdb

5
推荐指数
1
解决办法
2万
查看次数

安装旧版本 SQL Server 的实例

在安装较新版本后安装以前版本的 SQL Server 实例时,是否有任何需要注意的问题?例如,将 2008 安装到具有现有 2012 实例的服务器上?

我找不到特定于这种情况的陈述,但这似乎有风险。

sql-server instance installation

5
推荐指数
1
解决办法
2759
查看次数

一个位置的最小距离;一个点表与一组点 SQL 2012 相比

我试图找到找到一个点到点表的最小距离的最快方法。唯一需要注意的是,我试图找到最小距离的点表是 150K 单点。

或者更好地解释表 A 有 150K 行/点,表 B 1500 点。我想知道表 A 中的每一行与表 B 中列出的所有行的最小距离是多少。

我有一个进行距离计算的函数,作为表 A 的附加列。它只需要很长时间。表 B 有一个空间索引。

这就是我所拥有的:

select a.*, 
       dbo.fxn_distance(geography::STPointFromText('POINT(' + 
       CAST([Long] AS VARCHAR(20)) + ' ' + CAST([Lat] AS 
       VARCHAR(20)) +    ')', 4326)) as DistAway
from Table A a
Run Code Online (Sandbox Code Playgroud)

我的功能:

create function fxn_distance
(@pointTableA geography
)
returns float 
as 
begin

declare @distance float

select top 1 @distance = b.GeoLocation.STDistance(@pointTableA) 
from TableB b  
where geolocation.STDistance(@pointTableA) is not null
order by geolocation.STDistance(@pointTableA)

return @distance
end
Run Code Online (Sandbox Code Playgroud)

对不起,如果我完全是一个新手,我知道解决方案可能很简单,但我无法解决这个问题。所以希望澄清一下:我需要通过表 A …

sql-server t-sql sql-server-2012 spatial

5
推荐指数
1
解决办法
2363
查看次数

一次性将所有代理作业的 SQL 代理输出添加到文本文件中

作为最佳实践,我正在尝试安排一个活动,其中所有 SQL 代理作业都应将输出记录到文本文件中。

手动我可以为单个工作执行此操作。但是我正在通过脚本或任何好的方法寻找更好的方法,我可以为每个服务器大约 80-90 个作业的多个作业进行此更改。

此外,我必须在 QA、UAT 和 prod 中执行此操作,涵盖 100 多台服务器。

请分享您的经验或任何有用的链接,这是如何以最佳方式实现的,因为生成输出的日志文件的路径应该在服务器/作业之间通用。

sql-server sql-server-2012 sql-server-agent jobs

5
推荐指数
1
解决办法
3888
查看次数

sys.partitions 行计数严重错误 - 如何纠正?

查询 sys.partitions 可以返回表的近似行数。

我注意到,无论实际内容如何(即使是空分区),这都会为所有分区返回相同的行数。

该表具有聚集列存储索引,并且几乎所有列上都创建了统计信息。每次数据加载后,每天都会更新统计信息。该表按日期分区。

sys.partitions 查询:

    SELECT   convert(date, convert(varchar,rv.[value])) as partitionDate, p.rows as syspartitions_RowCount
        FROM       sys.tables t     
        join       sys.schemas  sc on sc.schema_id = t.schema_id        
        JOIN        sys.partitions p                ON      p.[object_id]         = t.[object_id]
        JOIN        sys.indexes i                   ON      i.[object_id]         = p.[object_id]
                                                    AND     i.[index_id]          = p.[index_id]
        JOIN        sys.data_spaces ds              ON      ds.[data_space_id]    = i.[data_space_id]
        LEFT JOIN   sys.partition_schemes ps        ON      ps.[data_space_id]    = ds.[data_space_id]
        LEFT JOIN   sys.partition_functions pf      ON      pf.[function_id]      = ps.[function_id]
        LEFT JOIN   sys.partition_range_values rv   ON      rv.[function_id]      = pf.[function_id]
                                                    AND     rv.[boundary_id]+1      = p.[partition_number]
        WHERE   p.[index_id] …
Run Code Online (Sandbox Code Playgroud)

sql-server partitioning azure-sql-data-warehouse

5
推荐指数
1
解决办法
5788
查看次数

无法启动 TSQL 调试器

我想在 TSQL 中调试。当我开始调试时,会弹出以下消息框。在 SSMS v17.2 中

在此处输入图片说明

然后我看到这个消息:

在此处输入图片说明

在 Microsoft Visual Studio 2015 服务器资源管理器中,同样的错误:

在此处输入图片说明

然后我看到这个消息:

在此处输入图片说明

谢谢你!

sql-server ssms debugging visual-studio-2015

5
推荐指数
1
解决办法
2321
查看次数