我是linq和cdc的新手。我正在尝试使用c#和linq查看cdc日志文件更新。基本上我需要帮助的是,如何使用c#和linq实现这个show update查询。
USE mytest;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10)
SET @from_lsn =
sys.fn_cdc_get_min_lsn('dbo_User_Info')
SET @to_lsn = sys.fn_cdc_get_max_lsn()
SELECT ID_number, Name, Age FROM cdc.fn_cdc_get
我试图通过传递Min和Max日期来获得CDC启用的表上的净更改。但却被抛在错误之下。
Msg 313, Level 16, State 3, Line 24
An insufficient number of arguments were supplied for the procedure or function cdc.fn_cdc_get_net_changes_ ... .
我的代码如下:
DECLARE @CDate DATE = '2013-03-18' --This is the date after the CDC was enabled on the tabl
有时,我在恢复DB差异时遇到问题。我得到的错误“差异备份无法恢复,因为数据库尚未恢复,以纠正以前的状态。”通过对这个问题的研究,我发现我遇到的特殊差异是不符合顺序的。
有什么方法可以从我得到的备份文件(.bak)中检查.bak吗?我从供应商那里获得完整/差异备份文件,我很难查询源db和msdb.
当我试图还原有问题的差异文件时,我可以在窗口中看到一些lsn值。然而,我似乎不明白我是否能弄清楚这个微分是否不符合顺序。我将粘贴下面的lsn信息,看看其他人是否可以从这些信息中找到答案。我只是不明白lsn是怎么工作的。
first lsn last lsn
我们在Ubuntu18.04上运行了PostgreSQL 14.2,并设置了物理(异步)复制。备用是在一个带有EBS卷的AWS EC2实例上。当我尽可能快地测试插入数据时,复制滞后不断增加,我不知道瓶颈是什么。在最近的例子中,我运行了一个事务,它插入了大量数据,并在两天前完成,此后没有任何其他活动,而且备用程序仍在努力追赶--复制延迟达到了75 up的峰值,现在降到了29 up。
当我多次运行repmgr node status时,上次接收到的LSN没有变化,只有最后一个重放LSN:
Last received LSN: 2DE/86000000
Last replayed L
我想使用AWS DMS将本地SQL Server CDC迁移到S3文件。除了CDC的运行时间在目标之外,其他一切都运行正常。我有: [__$start_lsn]
,[__$end_lsn]
,[__$seqval]
,[__$operation] 将数据列在目标中,但与计时无关。如何才能在目标中获得操作时间? 我知道如果有一种方法可以在目标中返回SQL函数的结果,我可以调用sys.fn_cdc_map_lsn_to_time(x.__$start_lsn)函数,但不知道如何做到这一点。 本地SQL Server版本为: Microsoft SQL Server
如何从SQL Server中的事务日志文件中获取用户?
我尝试了这个查询,但它没有给我正确的用户
SELECT
CASE
WHEN (SELECT NAME
FROM SYS.SERVER_PRINCIPALS lgn
WHERE Rtrim(lgn.SID) = Rtrim(log2.[TRANSACTION SID])) IS NOT
NULL THEN
'login: '
+ Upper((SELECT NAME FROM SYS.SERVER_PRINCIPALS lgn WHERE Rtrim(
从我的三个节点中的一个停止了数据复制。错误节点上的复制插槽已消失。有没有人知道发生了什么或者如何修复它?
详细信息:节点SS1、SS2和SS3都有SSK订阅的发布。从SS2复制现在失败。使用PostgreSQL 10.1。
SSK psql日志:
2019-02-07 10:21:13.953 CST [26274] LOG: logical replication apply worker for subscription "SS2" has started
2019-02-07 10:21:14.309 CST [26274] ERROR: could not star