如果我将 SQL Server 2016 STD 升级到 ENTERPRISE 并且该服务器安装了以下服务:SSIS 和 SSRS 我可以只升级 SQL 的版本,它会自动升级该服务器上的 SSIS 和 SSRS 还是我需要采取额外的脚步?
提前致谢。
如果我将 SQL Server 2016 STD 升级到 ENTERPRISE 并且该服务器安装了以下服务:SSIS 和 SSRS 我可以只升级 SQL 的版本,它会自动升级该服务器上的 SSIS 和 SSRS 还是我需要采取额外的脚步?
提前致谢。
我有一个距离表和一个城市表。我以我现在拥有的方式加入了它们:cityA_id,city_A,cityB_id,cityB,以公里为单位的距离我需要获取cityA和CITY B之间的距离,然后在同一查询结果中获取cityB和CityA之间的距离。(意思是如果奥尔巴尼到奥本是 36 公里,我还想检查奥本到奥尔巴尼的距离(其中 cityA 将是奥本和 cityB 奥尔巴尼)样本数据:
我怎么能动人地写这个?
到目前为止我所拥有的:
with A as (
SELECT [CITY_1],
[CITY_NAME]
,[CITY_2]
,[DIS_IN_KM]
FROM [DB].[dbo].[DISTANCE] d
join cities c
on d.CITY_1 = c.CITY_NO
),
first_direction as
(
select A.[CITY_1] as cityA_id,A.[CITY_NAME] as [CityA],A.[CITY_2] as CityB_id, c.CITY_NAME as CITYB, A.[DIS_IN_KM] as [distance in km],
c.CITY_NAME as CITYB2, A.[CITY_NAME] as CITYA2--, B.DIS_IN_KM as [distance in km opposite]
from A join CITIES c on A.CITY_2 = c.CITY_NO
)
select * from first_direction
表架构:
CREATE TABLE [dbo].[DISTANCE](
[CITY_1] [char](6) NOT NULL,
[CITY_2] [char](6) NOT NULL,
[DRIVE_TIME] [decimal](9, 2) NOT NULL,
[DIS_IN_KM] [smallint] NOT NULL,
[HARD_DIST] [smallint] NOT NULL,
[BUS_FARE] [decimal](9, 3) NOT NULL,
[CODE1] [smallint] NOT NULL,
[CODE2] [smallint] NOT NULL,
[CODE3] [smallint] NOT NULL,
[DATE] [datetime] NOT NULL,
[TEMP1] [decimal](9, 3) NOT NULL,
[TEMP2] [decimal](9, 3) NOT NULL,
[TEMP3] [decimal](9, 3) NOT NULL,
CONSTRAINT [PK_DISTANCE2] PRIMARY KEY NONCLUSTERED
(
[CITY_1] ASC,
[CITY_2] ASC
)
CREATE TABLE [dbo].[CITIES](
[CITY_NO] [char](6) NOT NULL,
[CITY_NAME] [char](40) NOT NULL,
[BASE_CODE] [tinyint] NOT NULL,
[ZONE_CODE] [tinyint] NOT NULL,
[NAME_2] [char](40) NOT NULL,
CONSTRAINT [PK_CITIES_NUMBER] PRIMARY KEY NONCLUSTERED
(
[CITY_NO] ASC
)
提前致谢!
我在域 A 中有一个 SSRS 服务器,我被要求将域 A 中的所有文件夹和报告复制到域 B 中的 SSRS 服务器。
网络团队已经打开了不同域中两台服务器之间的端口,我可以从对面服务器连接到每个 SSRS 的 Web 浏览器。
当我在同一域中的服务器之间复制报告时,我通常使用 rs 服务命令。我尝试在两个域之间做同样的事情并收到此错误:
无法连接到服务器http://localhost/[sourceserver]/reportservice2010.asmx
供参考:服务器 A - 是域 A 中的源服务器 服务器 B - 是域 B 中的目标
这是我在 CMD 上运行的命令:
rs.exe -i ssrs_migration.rss -e Mgmt2010 -s http://[server A IP]/reportserver -u Domain A\username -p domain A password -v f="/foldername" -v ts="http://[server B ip]/Reportserver" -v tu="Domain B\username" -v tp="Domain B password" -v tf="/foldername" -v security="True"
同样重要的是要提到目标服务器已经有报告,所以我无法将报告服务器数据库还原到它。
我能做些什么来解决这个问题?谢谢
我正在尝试使用游标将数据从 CSV 文件插入到表中并打开行集批量插入。这在 99% 的情况下都适用于我,但如果 csv 文件中的某个字段包含逗号 (, ),则数据导入会被破坏,并且所有列都会在其位置后导入一列。例如,它应该如下所示:
timestamp username name IP title
20190331 ABCD12G david hertz 1.1.1.1 null
但是,如果我在名称列中有逗号(例如),它将如下所示:
timestamp username name IP title
20190331 ABCD12G david hertz 1.1.1.1
csv 示例:
username,name,ip,title
ABCD12G,david,hertz,1.1.1.1,''
这是我正在使用的语法:
insert into [player table]
select 20190331,* FROM OPENROWSET(BULK 'D:\folder\2019\03-
31\Player_statistics.csv', FIRSTROW = 2,
FORMATFILE='D:\folder\test\xml\Player_statistics.xml')
as t1
我该如何更改它以忽略单词中间的逗号?(我无法限制 CSV,因为它取自另一个不会限制字符的客户端。
我用于通过 openrowset 导入的 xml:
当您执行常规批量插入时,您可以选择指定分隔符 fielterminator = '","' ,我在 openrowset 中找不到类似的东西。
什么可以帮助解决这个问题?
我需要从我域中的所有实例中删除用户。
为此,我想创建一个 CMS 组并对其执行查询。问题是我要添加 150 多台服务器。如何将服务器批量添加到组而不是手动添加?
我有一个巨大的视野——这个视野收集了玩家的信息。在特定部分,视图为玩家分配代理,这些玩家是从表“S”中选择的,并使用 case 语句进行分配。我想根据表 T 中名为 total_deposit 的聚合值分配特定代理。所以基本上我想说当表 S 中的用户在以下条件内(来自表 T)具有 max(total_deposit) 时,将代理名称设为 Andy我试过的代码:
CASE
WHEN s.Username = gs.username THEN gs.agent
when exists (select t.username from temptest t
where t.username = s.username
group by t.username
having max(t.total_deposit) >= 5000 or
( max(t.total_deposit) >= 1000 AND max(t.total_deposit) < 5000 )or
( max(t.total_deposit) >= 500 AND max(t.total_deposit) < 1000) or
( max(t.total_deposit) >= 250 AND max(t.total_deposit) < 500 )
) and s.Country in('Austria', 'Luxemburg', 'Switzerland', 'Lichtenstein')
then 'Andy'
else 'Joy'
它没有用,因为如果存在需要跟随一个表达式..我该怎么做?谢谢
我的工作有几个步骤(运行报告信息),我添加了一个我写到最后一步的查询。有时作业会因为我无法控制的因素(应用程序问题)而失败,并且当当前时间在上午 8:45 之后时,我的查询基本上会自动执行作业(命令在我创建的表中使用游标运行) ,所以 BI团队不需要自己做。我检查了几次,当我在 ssms 上执行它时,它似乎工作正常,但由于某种原因,当它作为作业运行时,它忽略了时间条件,只是执行作业。
查询:
DECLARE @CodeID INT
declare @codecommand nvarchar(100)
DECLARE crsr CURSOR FAST_FORWARD
FOR
SELECT CodeID, CodeCommand
FROM exec_jobs_on_error
ORDER BY codeid asc;
OPEN crsr
FETCH NEXT FROM crsr
INTO @CodeID, @CodeCommand
WHILE @@FETCH_STATUS = 0
begin
BEGIN TRY
if exists (select 'true' where LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100), 7)) > '08:45AM')
begin
EXEC sp_executesql @codeCommand
INSERT INTO the_daily_BI_error_log
VALUES(@CodeID, 'Completed', GETDATE())
end
END TRY
BEGIN CATCH
declare @CodeError nvarchar(100)
SET @CodeError = (SELECT ERROR_MESSAGE())
insert into the_daily_BI_error_log
values(@codeid, @CodeError, GETDATE())
END CATCH
FETCH NEXT FROM crsr
INTO @CodeID, @CodeCommand
end
CLOSE crsr
DEALLOCATE crsr
我在条件写作中遗漏了什么吗?谢谢。
在我们尝试将带有 Service Broker 的数据库配置为始终在线的环境但失败后(Service Broker 无法正常工作),我们现在正在考虑尝试镜像以实现高可用性。
客户端要求它将使用自动故障转移,我知道这需要一个见证服务器。我之前已经多次配置镜像,但从未使用服务代理。有没有人试过并且有效?我试图找到它的官方文档,但没有找到任何东西。在镜像数据库上配置的步骤是什么?使用具有同步镜像的服务代理会导致性能问题吗?
我们的其中一台报表服务器在尝试从客户端计算机访问它时出现错误,并且在实际服务器上运行良好。错误是:
我使用微软的这篇文章发现这是 sql 2016 中的一个错误:https: //support.microsoft.com/en-us/help/3172981
我升级到 SP2,然后按照 Microsoft 的建议升级到最后一个 CU 更新,但仍然无法正常工作。
错误日志:
appdomainmanager!DefaultDomain!414!08/16/2018-12:22:19:: i INFO: Registering AppDomain: type='ReportServer'; id='3'; Name='ReportServer_MSSQLSERVER_0-1-131788849389917877' appdomainmanager!DefaultDomain!414!08/16/2018-12:22:19:: i INFO: 为 AppDomain id '3' appdomainmanager!DefaultDomain!414!08/16 创建一个新的 AppDomainLifeCycleManagementEntry /2018-12:22:19:: i INFO: Appdomain STARTED: id='3'; name='ReportServer_MSSQLSERVER_0-1-131788849389917877' appdomainmanager!ReportServer_0-1!414!08/16/2018-12:22:23::i INFO: RS 认证模式为 4;有效的 ASP.NET 身份验证模式是 Windows。vdir=/报告服务器。appdomainmanager!DefaultDomain!414!08/16/2018-12:22:23:: i INFO: Appdomain:3 ReportServer_MSSQLSERVER_0-1-131788849389917877 已初始化 (#1)。appdomainmanager!默认域!414!OutOfMemoryExceptionSystem.Web.HttpExceptionSystem.IO.IOExceptionSystem.IO.FileLoadExceptionMicrosoft.SharePoint.SPExceptionMicrosoft.ReportingServices.WmiProvider.WMIProviderExceptionSystem.AppDomainUnloadedException 库!ReportServer_0-1!414!08/16/2018-12:22:50:: i INFO: Minidump位置:C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\Logfiles runningjobs!ReportServer_0-1!414!08/16/2018-12:22:50::i INFO: Running Requests Scavenger timer enabled:下一个事件:60 秒。周期:60 秒 runningjobs!ReportServer_0-1!414!08/16/2018-12:22:50::i INFO: Running Requests DB timer enabled: Next Event: 60 秒。周期:60 秒 resourceutilities!ReportServer_0-1!414!08/16/2018-12:22:50::i INFO: Reporting Services 开始 SKU: Enterprise ui!ReportServer_0-1!414!08/16/2018-12: 22:50:: i 信息:已安装的 SKU:企业版 ui!ReportServer_0-1!414!08/16/2018-12:22:50::i 信息:企业版库未启用软件使用指标!ReportServer_0-1!414!08/16/2018-12: 22:51:: i 信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!414!08/16/2018-12:22:51:: i INFO: Catalog SQL Server Edition = Enterprise crypto!ReportServer_0-1!414!08/16/2018-12:22:51: :i INFO: 以用户身份初始化加密: BRIUTNT\vmbi crypto!ReportServer_0-1!414!08/16/2018-12:22:51:: i INFO: 导出公钥加密!ReportServer_0-1!414!08/16 /2018-12:22:52::i 信息:导入现有加密密钥库!ReportServer_0-1!414!08/16/2018-12:22:52::i 信息:输入 StreamRequestHandler.ExecuteCommand - 命令 = 库! ReportServer_0-1!414!08/16/2018-12:22:52::i 信息:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。图书馆!ReportServer_0-1!414!08/16/2018-12:22:52::i 信息:调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-1!414!08/16/2018-12:22:52:: i INFO: 已处理文件夹 '/' library!ReportServer_0-1!414!08/16/2018-12:22:52:: i 信息:退出 StreamRequestHandler.ExecuteCommand - 命令 =(成功)库!ReportServer_0-1!1b1c!08/16/2018-12:27:18:: i 信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1b1c!08/16/2018-12:27:18:: i INFO: 进入 StreamRequestHandler.ExecuteCommand - Command = library!ReportServer_0-1!1b1c!08/16/2018-12:27:18 :: i INFO:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1b1c!08/16/2018-12:27:18:: i INFO: 调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。网络服务器!ReportServer_0-1!1b1c!08/16/2018-12:27:18:: i INFO: 已处理文件夹'/' library!ReportServer_0-1!1b1c!08/16/2018-12:27:18:: i INFO: Exiting StreamRequestHandler.ExecuteCommand - Command = (success) library!WindowsService_0!58 !08/16/2018-12:28:52::i INFO: 调用 CleanBatch() 库!WindowsService_0!58!08/16/2018-12:28:52::i INFO: 已清理 0 批记录,0策略、0 个会话、0 个缓存条目、0 个快照、0 个块、0 个正在运行的作业、0 个持久流、0 个分段、0 个分段映射、0 个编辑会话。library!WindowsService_0!58!08/16/2018-12:28:52::i 信息:调用 CleanBatch() 结束 library!ReportServer_0-1!1838!08/16/2018-12:32:18::i信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1838!08/16/2018-12:32:18:: i INFO: 进入 StreamRequestHandler.ExecuteCommand - Command = library!ReportServer_0-1!1838!08/16/2018-12:32:18 :: 我信息:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1838!08/16/2018-12:32:18:: i INFO: Call to ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-1!1838!08/16/2018-12:32:18:: i INFO: 已处理文件夹 '/' library!ReportServer_0-1!1838!08/16/2018-12:32:18:: i 信息:退出 StreamRequestHandler.ExecuteCommand - 命令 =(成功)库!ReportServer_0-1!4a4!08/16/2018-12:37:18:: i 信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!4a4!08/16/2018-12:37:18:: i INFO: 进入 StreamRequestHandler.ExecuteCommand - Command = library!ReportServer_0-1!4a4!08/16/2018-12:37:18 :: i INFO:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!4a4!08/16/2018-12:37:18:: i INFO: 调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-1!4a4!08/16/2018-12:37:18:: i INFO: Processed folder '/' library!ReportServer_0-1!4a4!08/16/2018-12:37:18:: i INFO:退出 StreamRequestHandler.ExecuteCommand - Command = (success) library!WindowsService_0!2244!08/16/2018-12:38:52:: i INFO: Call to CleanBatch() library!WindowsService_0!2244!08/16/ 2018-12:38:52:: i INFO: 已清理 0 个批处理记录、0 个策略、0 个会话、0 个缓存条目、0 个快照、0 个块、0 个正在运行的作业、0 个持久流、0 个段、0 个段映射、0 个编辑会议。library!WindowsService_0!2244!08/16/2018-12:38:52::i 信息:调用 CleanBatch() 结束 library!ReportServer_0-1!1b0!08/16/2018-12:42:18::i信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1b0!08/16/2018-12:42:18:: i INFO: 进入 StreamRequestHandler。ExecuteCommand - Command = library!ReportServer_0-1!1b0!08/16/2018-12:42:18:: i INFO: 调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1b0!08/16/2018-12:42:18:: i INFO: 调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-1!1b0!08/16/2018-12:42:18:: i INFO: 已处理文件夹 '/' library!ReportServer_0-1!1b0!08/16/2018-12:42:18:: i 信息:退出 StreamRequestHandler.ExecuteCommand - 命令 =(成功)库!ReportServer_0-1!1848!08/16/2018-12:47:18:: i 信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-1!1848!08/16/2018-12:47:18:: i INFO: 进入 StreamRequestHandler.ExecuteCommand - Command = library!ReportServer_0-1!1848!08/16/2018-12:47:18 :: i INFO:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。图书馆!ReportServer_0-1!1848!08/16/2018-12:47:18:: i 信息:调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-1!1848!08/16/2018-12:47:18:: i INFO: 已处理文件夹“/”库!ReportServer_0-1!1848!08/16/2018-12:47:18:: i 信息:退出 StreamRequestHandler.ExecuteCommand - 命令 =(成功)appdomainmanager!DefaultDomain!1848!08/16/2018-12:47:59:: i 信息:SetUnloadStarted AppDomain id '3':unloadStarted = 1 appdomainmanager!DefaultDomain!1848 !08/16/2018-12:48:29:: i INFO: SetUnloadStarted AppDomain id '3': unloadStarted = 2 webserver!ReportServer_0-1!4a4!08/16/2018-12:48:29:: i INFO : 报告 Web 服务器停止 appdomainmanager!DefaultDomain!1844!08/16/2018-12:48:34:: i INFO: Unregistering AppDomain id='3' appdomainmanager!DefaultDomain!1844!08/16/2018-12:48: 34:: 我信息:取消注册 AppDomain:搜索 AppDomain id '3' appdomainmanager!DefaultDomain!1844!08/16/2018-12:48:34:: i INFO: Appdomain:3 ReportServer_MSSQLSERVER_0-1-131788849389917877 未注册。rshost!rshost!1844!08/16/2018-12:48:34::i INFO:应用程序域类型 ReportServer 统计信息:已创建:1,已卸载:1,失败:0,超时:0。库!WindowsService_0!2244 !08/16/2018-12:48:52::i INFO: 调用 CleanBatch() 库!WindowsService_0!2244!08/16/2018-12:48:52::i INFO: 已清理 0 批记录,0策略、0 个会话、0 个缓存条目、0 个快照、0 个块、0 个正在运行的作业、0 个持久流、0 个分段、0 个分段映射、0 个编辑会话。library!WindowsService_0!2244!08/16/2018-12:48:52:: i INFO: 调用 CleanBatch() 结束 appdomainmanager!DefaultDomain!2010!08/16/2018-12:52:18:: i INFO:注册 AppDomain: type=' 报告服务器'; id='4'; Name='ReportServer_MSSQLSERVER_0-2-131788867384302225' appdomainmanager!DefaultDomain!2010!08/16/2018-12:52:18:: i 信息:为 AppDomain id '4' appdomainmanager!DefaultDomain!2010!08/16 创建一个新的 AppDomainLifeCycleManagementEntry /2018-12:52:18:: i INFO: Appdomain STARTED: id='4'; name='ReportServer_MSSQLSERVER_0-2-131788867384302225' appdomainmanager!ReportServer_0-2!2010!08/16/2018-12:52:20:: i INFO: RS 认证模式为 4;有效的 ASP.NET 身份验证模式是 Windows。vdir=/报告服务器。appdomainmanager!DefaultDomain!2010!08/16/2018-12:52:20:: i INFO: Appdomain:4 ReportServer_MSSQLSERVER_0-2-131788867384302225 已初始化 (#2)。appdomainmanager!DefaultDomain!2010!08/16/2018-12:52:20:: i INFO: SetInitialized AppDomain id '4': initialized = 1 webserver!SharePoint.SPExceptionMicrosoft.ReportingServices.WmiProvider.WMIProviderExceptionSystem.AppDomainUnloadedException 库!ReportServer_0-2!2010!08/16/2018-12:52:27::i 信息:小型转储位置:C:\Program Files\Microsoft SQL Server\MSRS13。 MSSQLSERVER\Reporting Services\Logfiles runningjobs!ReportServer_0-2!2010!08/16/2018-12:52:27::i 信息:已启用运行请求 Scavenger 计时器:下一个事件:60 秒。周期:60 秒 runningjobs!ReportServer_0-2!2010!08/16/2018-12:52:27::i INFO: Running Requests DB timer enabled: Next Event: 60 秒。周期:60 秒 resourceutilities!ReportServer_0-2!2010!08/16/2018-12:52:27::i INFO: Reporting Services 开始 SKU: Enterprise ui!ReportServer_0-2!2010!08/16/2018-12: 52:27::i 信息:已安装 SKU:企业版 ui!ReportServer_0-2!2010!08/16/2018-12:52:27::i 信息:未为企业版库启用软件使用指标!ReportServer_0-2!2010!08/16/2018-12:52:27::i 信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-2!2010!08/16/2018-12:52:27:: i INFO: Catalog SQL Server Edition = Enterprise crypto!ReportServer_0-2!2010!08/16/2018-12:52:27: :i INFO: 以用户身份初始化加密: BRIUTNT\vmbi crypto!ReportServer_0-2!2010!08/16/2018-12:52:27:: i INFO: 导出公钥加密!ReportServer_0-2!2010!08/16 /2018-12:52:27::i 信息:导入现有加密密钥库!ReportServer_0-2!2010!08/16/2018-12:52:27::i 信息:输入 StreamRequestHandler.ExecuteCommand - 命令 = 库! ReportServer_0-2!2010!08/16/2018-12:52:27:: i 信息:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。图书馆!ReportServer_0-2!2010!08/16/2018-12:52:27:: 我信息:调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-2!2010!08/16/2018-12:52:27:: i INFO: 已处理文件夹 '/' library!ReportServer_0-2!2010!08/16/2018-12:52:27:: i 信息:退出 StreamRequestHandler.ExecuteCommand - 命令 =(成功)库!ReportServer_0-2!2290!08/16/2018-12:57:18:: i 信息:调用 GetItemTypeAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-2!2290!08/16/2018-12:57:18:: i INFO: 进入 StreamRequestHandler.ExecuteCommand - Command = library!ReportServer_0-2!2290!08/16/2018-12:57:18 :: i INFO:调用 ListParentsAction(/)。用户:NT AUTHORITY\SYSTEM。library!ReportServer_0-2!2290!08/16/2018-12:57:18:: i INFO: 调用 ListChildrenAction(/, False)。用户:NT AUTHORITY\SYSTEM。webserver!ReportServer_0-2!2290!08/16/2018-12:57:18:: i INFO: 已处理文件夹“/”库!
有什么建议吗?
我的一个客户有一个与服务代理一起工作的数据库,上周我们试图将数据库移动到一个始终在线的环境中,但不知道应用程序使用了服务代理。在有人抱怨它不起作用(预定的会议没有添加到日历中并且在旧会议完成后没有关闭(它是一个诊所应用程序))之后,我们发现 Microsoft 引用了始终开启的服务代理并尝试使用它: https ://learn.microsoft.com/en-us/sql/database-engine/availability-groups/windows/service-broker-with-always-on-availability-groups-sql-server?view=sql-server -2017
但它仍然没有工作。起初我们尝试过
alter database [databasename] set enable_broker with rollback immediate
alter database [databasename] set new_broker with rollback immediate
消息 1468,级别 16,状态 1,第 2 行 无法对数据库“dbname”执行操作,因为它涉及数据库镜像会话或可用性组。不允许对参与数据库镜像会话或可用性组的数据库执行某些操作。消息 5069,级别 16,状态 1
我们还尝试了这些命令:
CREATE ENDPOINT [SSBEndpoint]
STATE = STARTED
AS TCP (LISTENER_PORT = 4022, LISTENER_IP = ALL )
FOR SERVICE_BROKER (AUTHENTICATION = WINDOWS)
GRANT CONNECT ON ENDPOINT::[SSBEndpoint] TO [PUBLIC]
ALTER ROUTE AutoCreatedLocal
WITH ADDRESS = 'TCP://[server]:4022' ;
最后我们别无选择,我们将它从永远在线组中取出,在执行此命令后它起作用了:
ALTER ROUTE AutoCreatedLocal
WITH ADDRESS = 'LOCAL' ;
有没有人建议我们在配置上缺少什么?谢谢。
我有一个客户为一家养老金公司提供 2 TB 的数据库。该数据库包含很多大文件。
他们想存档所有不是今年的东西。到目前为止没问题——我只会为批量插入和删除做一个 while 循环,然后在每批之后备份日志。
执行归档后,我可以缩小数据库吗?如果我们谈论的是移动的 400GB,需要多长时间?
对于这样的服务器来说,这听起来像是一个非常繁重的过程。我可以在周末做,但我不确定它是否会及时停止运行。
我有这个代码:
insert into [dbo].[NGC_Agent_Intervals]
SELECT
AgentID,
date,
[Hour] = DATEPART(HOUR, RSRange),
hour_quarter = CONCAT(DATEPART(MINUTE, RSRange) ,'-', DATEPART(MINUTE, RERange)),
DepartmentID,
[DepartmentName],
[AgentState],
[AgentStateReason],
( select AgentStateReasonDescription from RealRanges) as AgentStateReasonDescription,
[ExtensionID],
[WorkstationID],
Duration = sum(CASE
WHEN RSRange <= aStart and aend >= RERange THEN DATEDIFF(SECOND, aStart, DATEADD(MINUTE, 15, RSRange))
when RSRange <= aStart and aend < RERange THEN DATEDIFF(SECOND, aStart, aEnd)
WHEN RERange >= aEnd THEN DATEDIFF(SECOND, RSRange, aEnd)
ELSE DATEDIFF(SECOND, RSRange, RERange)
END)
FROM RealRanges
WHERE DATEDIFF(SECOND, RSRange, aEnd) > 0
AND AgentState NOT IN ('logout', 'LOGIN')
GROUP BY duration,RealRanges.AgentID, RealRanges.date, RealRanges.hour,
DepartmentID,[DepartmentName], [AgentState], [AgentStateReason],
[ExtensionID],[WorkstationID], RSRange, RealRanges.RERange
我在使用 cte 将原始行从表中拆分为几行后运行此代码。如果几列在几行中匹配,我想要做的是对持续时间值求和。
那是原始表值,我想对持续时间求和: 如果我不对持续时间求和,它看起来像这样: 求和后应该是这样的:
唯一的问题是我只想对以下列进行分组:
AgentID
Date
hour
Hour_Quarter
AgentState
AgentStatereason
并排除其他列,因此即使 extensionid 不同(例如),我仍然可以从 2 列中得到总和。我尝试使用子查询(在上面的代码中)执行此操作,但出现错误:
那么我错过了什么?
我有一个客户端服务器,该实例上有大约 15 个数据库,数据总量约为 100 GB。其中一个数据库用于 sysaid 应用程序。他的临时数据库文件是一个 mdf 一个 ndf,当然还有一个 ldf。mdf 与其他 mdf 位于同一驱动器上,如果是 ldf 文件也是如此。
当我设置自动增长属性时,我知道我应该将其保持为不受限制的增长,但是当我需要在自动增长 % 或 MB 之间进行选择时,该选择什么?我怎么知道要配置什么号码?
提前致谢!