我有一个测试环境,设置如下:
我们正在测试升级到 SQL Server 2012 Developer Edition (sp1) 的过程...
我已经下载了 64 位 SQL Server 2012 Dev 的 iso。(sp1) 来自 MSDN(完整许可副本),并已开始走上升级之路。在开始检查不同标准的最后阶段之一,我们遇到了一个奇怪的问题,如下所述:
Rule "Upgrade architecture mismatch" failed. The CPU architectures of upgrading feature(s) are different. To upgrade these features, Setup architecture must be the same as the features being installed.
Run Code Online (Sandbox Code Playgroud)
此外,在升级日志文件中,我发现了以下(更详细的)输出:
(03) 2012-12-28 14:02:45 Slp: Init rule target object: Microsoft.SqlServer.Configuration.SetupExtension.BlockMixedArchitecture …
Run Code Online (Sandbox Code Playgroud) replication sql-server-2005 sql-server sql-server-2012 merge-replication
我们有一个包含 1000 多个表的数据库。我需要创建一个角色,该角色允许对所有表进行只读访问,以及对两个特定表的写访问权限。
我一直在处理数据库角色,但是每当我添加表时,我都必须手动选择所有 1000 个……有没有更好的方法来做到这一点?
在测试数据库中,我希望:
我的工作流程也是如此,在删除聚集索引之前添加了禁用所有非聚集索引。
由于删除聚集约束索引需要将表保存为 HEAP,因此此过程在我们的 45m 行表上花费的时间是巨大的。约束的下降一直持续到 1:17:00,似乎只有大约 31m(基于会话的 Spotlight 中的逻辑读取)。
有没有更有效的方法来处理这个工作流程?也许是一种删除约束索引并重建为新聚集索引而不是 HEAP 的方法?
谢谢,韦斯
DDL 语句:
表结构
CREATE TABLE [dbo].[hist](
[prrowid] [varchar](36) NOT NULL,
[part] [varchar](30) NULL,
[date] [datetime] NULL,
[per_date] [datetime] NULL,
[type] [varchar](80) NULL,
[loc] [varchar](80) NULL,
[loc_begin] [decimal](28, 10) NULL,
[begin_qoh] [decimal](28, 10) NULL,
[qty_req] [decimal](28, 10) NULL,
[qty_chg] [decimal](28, 10) NULL,
[qty_short] [decimal](28, 10) NULL,
[um] [varchar](30) NULL,
[last_date] [datetime] NULL,
[nbr] [varchar](30) NULL,
[so_job] [varchar](80) NULL,
[ship_type] [varchar](30) NULL,
[addr] [varchar](80) …
Run Code Online (Sandbox Code Playgroud) 我们的数据仓库有一个 2 节点集群 SQL Server 2014 企业版环境。存储、网络和服务器都是高性能的(1tb mem,每个节点 32 核 CPU,全是 SSD)
我们正在努力想出将 SSIS 本身放在哪里。根据 Microsoft 文档,不建议将其群集,因此不应在 2 个节点上(尽管我确实将它与实例一起安装,但如果从那里可以禁用服务。)另一方面,我们真的不想花钱购买 8 个 vCPU 的许可,以将其放在同一生态系统中的可用服务器上(用于供应商的专有 ETL。)
关于如何/在何处为群集 SQL Server 数据库环境安装 SSIS 的最佳做法和建议是什么?
谢谢你,韦斯
编辑:微软在这里讨论这个:https : //docs.microsoft.com/en-us/sql/integration-services/service/integration-services-ssis-in-a-cluster但没有将推荐的方法作为选择。