我正在尝试在 SQL Server 2000 中设置警报和通知,但它们不起作用。我正在测试它们的代理计划作业,我收到一条说明:
注意:无法通过电子邮件通知“[operatorname]”。
然后在当前错误日志中,我看到如下条目:
[264] 在没有建立电子邮件会话时尝试发送电子邮件
xp_sendmail 工作正常,我实际上在这些代理工作中使用它。通知应该告诉我程序已成功完成。我只是要求完成通知才能使其正常工作,然后我会将其更改为失败通知。
任何人都知道为什么会发生这种情况以及如何纠正?我真的很想通知工作。
我有一个想法可以供我的开发人员使用,并且基本上需要反馈。
这个想法是拥有一个集中的 SQL Server 数据库服务器供所有开发人员使用。
每个开发人员都可以在特定项目的服务器上拥有自己的数据库(例如,SW_ProjectName)。
因此,如果开发人员休假一周,而我们需要在截止日期前完成,我们可以通过更改本地配置连接字符串轻松连接到他们的数据库。
除此之外,它们将是一个测试数据库(例如ProjectName_Testing),开发人员将使用它在部署到 Staging 之前运行测试他们的 sprint。
任何人都可以想到这种方法的优点和缺点,而不是让每个人都拥有自己的本地数据库进行开发。
USE [RF_WORLD]
GO
/****** Object: Trigger [dbo].[lastdeathtrigg] Script Date: 08/20/2012 10:52:58 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Mauro Tamm
-- =============================================
ALTER TRIGGER [dbo].[lastdeathtrigg]
ON [dbo].[tbl_pvporderview]
AFTER UPDATE
AS
IF (UPDATE(Death))
BEGIN
SET NOCOUNT ON;
DECLARE @userserial int;
SELECT @userserial ='serial' WHERE UPDATE(Death)
Insert INTO [RF_WORLD].[dbo].[lastdeath]
(serial)
VALUES (@userserial)
END
Run Code Online (Sandbox Code Playgroud)
where 部分是可疑的,它会像那样工作吗?本质上,如果它实际更新,我只需要它选择行序列值。
当前数据库将近 200GB,但是事务日志文件只有 4.1GB。我担心这是否会影响数据库的性能以及如何解决。
当我做这个查询时
DECLARE @DatabaseName VARCHAR(50) ;
SET @DatabaseName = 'dbname'
SELECT name ,
recovery_model_desc ,
log_reuse_wait_desc
FROM sys.databases
WHERE name = @DatabaseName
Show Recovery Model = Simple, Log Reuse Wait = Nothing.
Run Code Online (Sandbox Code Playgroud)
任何人都知道为什么日志文件这么小,这会影响性能吗?
我有两个问题。我有一个处于完全恢复模式的数据库。让我们将事务日志简称为 LDF 文件。
SQL Server 允许我在从数据库恢复到自身时恢复到过去的时间点。这甚至有意义吗?当我尝试它没有产生预期的结果。如果它不起作用,为什么甚至允许这样做?它有什么实际用途吗?
在玩 LDF 文件时,我发现了一个好奇心:考虑在简单模式下使用数据库。然后我将其切换到完全恢复模式。然后我在数据库中插入了一些 10000 行,检查 LDF 并发现 LDF 文件大小没有增加。当我进行完整备份然后再次将 10000 行插入数据库时,LDF 文件才会增加。这是某种优化吗?注意:我在两次操作之前都缩小了 LDF 文件。
感谢所有的解释。
我有一个相当简单的查询,使用sys.dm_db_missing_index_group_stats来标识我的 SQL Server 数据库中缺少的索引。这是非常常用的。我的问题是如何确定这些索引中哪些是重要的并且应该创建,我应该全部创建它们还是有任何其他秘密?我特别应该在 avg_user_impact 或 avg_total_user_cost 列中寻找什么?
我的 SQL Server 2000 有问题。从上午 9 点到下午 5 点,它的 CPU 利用率很高。三个应用程序通过三个不同的实例使用此服务器,但当 CPU 利用率很高时,会连接一个实例。我查看了 sp_who2 结果,显示有很多 AWAITING COMMANDS 并且占用了大部分 CPU 时间。请告知更多等待命令是否会导致 CPU 使用率过高。
我想ALLOW_SNAPSHOT_ISOLATION在拥有约 4 亿条记录的生产数据库上启用。我知道每个记录需要添加 14 个字节。
如果我设置ALLOW_SNAPSHOT_ISOLATION它会阻塞一段时间与记录计数成正比,还是会异步更新数据?
首先,我想确保在启用此设置后,我的数据库不会在数小时内停止服务。
sql-server ×9
audit ×1
datafile ×1
index-tuning ×1
oracle ×1
oracle-10g ×1
performance ×1
select ×1
trigger ×1
update ×1