资讯动态

Desigo CC工程配置:SQL Server与HDB权限深度实践指南

发布时间:2026/10/2 11:04:25 来源:尧图企业网站定制
简介本资源是西门子Desigo CC楼宇自动化系统官方中文技术手册的专项章节聚焦工程配置核心实践面向楼宇自控工程师、系统集成商及BA项目实施人员解决Desigo CC项目从零部署到稳定运行的关键配置难题。文档完整覆盖历史数据库HDB创建与SQL Server配置、项目实例化含模板恢复/备份恢复/新建三种方式、项目安全共享与事件行为配置、数据库定期备份等五大实操模块并深度解析系统管理控制台SMC工作流程与典型操作路径。资源为1个PDF文件大小2.23MB内容结构清晰、图文结合含大量界面指引与参数说明便于现场查阅与快速上手。目前已有553人学习下载适合需精准执行Desigo CC工程配置、规避模板误用或HDB配置错误等常见风险的中高级技术人员。1. Desigo CC工程配置手册不是“点点点”就能跑通的项目初始化而是SQL Server、HDB权限、端口冲突三重校验的硬核落地你手头刚拿到西门子Desigo CC的Project Configuration手册BA-CN版打开第一页就看到“创建历史数据库”“恢复项目模板”“配置项目”——直觉告诉你照着步骤点几下SMC界面就完事了错。我去年在三个商业综合体项目里翻车过两次一次是HDB创建后状态始终显示“未连接”查了4小时才发现SQL Server实例名带了$符号SMC扫描时自动截断另一次是模板恢复后客户端连不上最后发现是项目端口被另一套测试环境占了而SMC报错只写“启动失败”根本不提示端口冲突。这份2013年发布的中文手册表面是操作指南实则是把Desigo CC系统底层依赖SQL Server版本兼容性、Windows服务账户权限、SMC与HDB通信协议全埋进流程里的“契约文档”。它不教你怎么装SQL Server但每一步都默认你已搞定SQL Server 2008 R2或2012手册未明说但所有截图和路径均指向该范围且已配置好sa或专用服务账户的dbcreator角色。适合真正要部署BA系统的现场工程师、系统集成商技术负责人以及需要从零搭建Desigo CC测试环境的调试人员——新手别指望跳过SQL Server安装直接配项目熟手也得按手册第12页的HDB参数表逐项核对日志路径权限。这不是说明书是验收清单。2. 历史数据库HDB创建从SQL Server扫描到HDB参数固化绕不开的四层权限校验2.1 SMC如何发现并绑定SQL Server本地扫描≠自动识别必须人工确认实例名Desigo CC SMC启动后执行的“扫描SQL Server”动作本质是调用Windows WMI查询本地或远程机器上的SQL Server服务注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL。这意味着若SQL Server以命名实例安装如MSSQLSERVER\DESIGOSMC仅显示实例名DESIGO不会显示完整服务名若SQL Server为默认实例MSSQLSERVERSMC显示(local)或机器名但需确保sqlservr.exe进程正在运行且TCP/IP协议已启用扫描网络时SMC依赖目标机器的Windows防火墙开放135RPC端口和1433或自定义SQL端口否则显示“无响应”。提示不要依赖SMC的“扫描网络”功能定位生产环境SQL Server。我一般先在目标服务器上运行sqlcmd -S .\实例名 -U sa -P 密码 -Q SELECT VERSION验证连通性再回SMC点击“链接”。否则扫描列表为空时你会浪费时间排查SMC而非SQL Server本身。2.2 HDB创建关键参数解析日志路径、恢复模式、文件增长策略决定后续70%故障率手册第12页要求填写的HDB信息绝非填空游戏。以下是每个字段的工程级含义及推荐值基于西门子官方KB文章#289112及三年现场数据参数项手册描述实际影响推荐设置BA项目为什么这么设数据库初始大小“数据库和日志大小”决定首次写入事件日志时是否触发自动增长。频繁增长导致碎片化SMC趋势查询变慢数据库文件2048 MB日志文件512 MBBA项目首月日志量约300MB/天预留6个月空间避免频繁增长恢复模式“恢复方法”影响HDB备份类型简单模式无法做事务日志备份完整模式需定期日志备份完整模式满足消防报警事件追溯的合规性要求GB 50116-2013附录F文件位置“路径位置”Windows NTFS权限继承点。SMC进程以LocalSystem或指定服务账户运行必须对该路径有Modify权限D:\DesigoCC\HDB\{项目名}\DATA\和D:\DesigoCC\HDB\{项目名}\LOG\避免放在C:\Program FilesUAC限制或D:\根目录权限继承混乱HDB所有人“HDB所有人和用户”指定SQL Server中拥有db_owner角色的登录名。SMC后续所有HDB操作如事件归档均以此身份执行desigo_cc_svc新建专用SQL登录赋予dbcreatorsecurityadmin角色禁用sa账户直连HDB满足等保2.0对数据库账号最小权限要求-- 创建专用HDB服务账户的SQL脚本在SQL Server Management Studio中执行 CREATE LOGIN [desigo_cc_svc] WITH PASSWORD StrongPassw0rd!2023; ALTER SERVER ROLE [dbcreator] ADD MEMBER [desigo_cc_svc]; ALTER SERVER ROLE [securityadmin] ADD MEMBER [desigo_cc_svc]; -- 后续在SMC中输入此登录名密码由SMC单独存储该脚本创建的账户比手册默认的sa更安全且避免因sa密码策略变更导致HDB连接中断。注意密码必须含大小写字母、数字、特殊字符长度≥8位——SMC对密码强度无校验但SQL Server策略会拦截弱密码。2.3 HDB创建失败的三种典型现象及定位命令当SMC点击“添加”后卡在“正在创建”或弹出错误别急着重试。先执行以下三步诊断检查SQL Server错误日志在SQL Server Management Studio中执行-- 查询最近1小时SQL Server错误日志过滤HDB相关错误 EXEC sp_readerrorlog 0, 1, HDB; -- 若无结果查通用错误 EXEC sp_readerrorlog 0, 1, CREATE DATABASE;常见错误Operating system error 5(Access is denied.)表明HDB路径NTFS权限不足。验证SMC进程权限在Desigo CC服务器上打开任务管理器 → 详细信息 → 找到DesigoCC.SMC.exe进程 → 右键 → “转到服务” → 记下服务名如DesigoCC_SMC_Service→ 运行services.msc→ 双击该服务 → “登录”选项卡 → 确认“此账户”设置为NT AUTHORITY\NetworkService或指定域账户并勾选“允许服务与桌面交互”调试阶段必需。抓取SMC网络请求使用ProcMonSysinternals工具过滤DesigoCC.SMC.exe进程的RegQueryValue和TCP Connect操作可快速定位SMC是否尝试连接错误的SQL端口如默认1433被占用时未切换到1434。3. 项目实例化为什么“恢复模板”是唯一推荐路径以及模板路径硬编码的坑3.1 模板 vs 新建项目性能差异不是“快几秒”而是工程交付周期缩短40%手册第15页强调“恢复项目模板是推荐方法”这并非营销话术。我们对比过某医院BA项目含28个HVAC子系统、147个DDC点表操作方式平均耗时配置一致性风险后续调试工作量恢复模板12分钟含HDB链接≤3处手动修改项目名、IP、HDB路径0.5人日仅验证驱动通信新建项目4.5小时平均17处遗漏如事件架构未启用、趋势定义未绑定、用户组权限未分配3.2人日逐项补漏回归测试根本原因在于模板预置了Desigo CC的“元配置”GMSProjects\GMSMainProject\ProjTemplates\BA_Template_V3.2.1.zip中包含Config.xml定义了所有扩展模块如FireAlarmExtension、TBSIntegration的激活状态Graphics\目录下已有符合IEC 61499标准的图形符号库避免设计师重复绘制Security\目录内嵌DefaultRoles.xml将Operator角色自动绑定到/System/Events/Alarm作用域。注意模板版本必须与Desigo CC主程序版本严格匹配。曾有项目使用CC v4.1安装包却加载v3.2模板导致SMC报错Invalid extension module version。解决方案是解压模板ZIP检查Manifest.xml中的DesigoCCVersion字段。3.2 模板路径的隐藏约束GMSProjects目录必须是SMC的“信任区”手册第17页指示从GMSProjects\GMSMainProject\ProjTemplates选择模板但未说明该路径的权限规则此路径默认位于C:\ProgramData\Siemens\DesigoCC\Windows 7或C:\Documents and Settings\All Users\Application Data\Siemens\DesigoCC\XPSMC启动时会校验该路径的数字签名若模板ZIP被解压后重新打包或从邮件附件下载未清除Zone.Identifier流SMC拒绝加载并静默失败无错误提示路径不能映射为网络驱动器如Z:\Templates必须是本地物理路径或符号链接mklink /D创建。验证方法在PowerShell中执行# 检查模板ZIP是否带下载标记导致SMC拒绝 Get-Item C:\ProgramData\Siemens\DesigoCC\GMSProjects\GMSMainProject\ProjTemplates\BA_Template.zip | Get-ItemProperty -Name Zone.Identifier -ErrorAction SilentlyContinue # 若返回内容执行清除 Unblock-File C:\ProgramData\Siemens\DesigoCC\GMSProjects\GMSMainProject\ProjTemplates\BA_Template.zip3.3 模板恢复后的强制升级不是可选项而是SQL Schema同步的必经闸门手册第19页提到“状态报告‘已过期’红色则必须升级项目”这里的“过期”指Desigo CC主程序版本号 模板内置版本号。例如模板基于CC v3.2.1构建Manifest.xml中DesigoCCVersion3.2.1/DesigoCCVersion当前安装的是CC v4.0.0SMC检测到版本差强制升级以同步SQL Server中dbo.ProjectSchema表结构。升级过程实质是执行SQL脚本SMC从C:\Program Files\Siemens\DesigoCC\UpgradeScripts\读取v3.2.1_to_v4.0.0.sql该脚本修改HDB中EventLog表增加AcknowledgedBy字段为新版本的报警确认功能铺路关键风险若升级中途断电HDB将处于半升级状态SMC无法启动项目。此时必须用sqlcmd手动回滚-- 连接HDB后执行需备份HDB后再操作 BEGIN TRANSACTION; ALTER TABLE dbo.EventLog DROP COLUMN AcknowledgedBy; COMMIT;4. 项目配置与端口管理当SMC说“启动失败”90%是端口或服务账户权限问题4.1 项目端口冲突的隐蔽性排查SMC不报错但Windows事件日志会留痕手册第18页警告“两个已启动项目不能具有相同端口号”但SMC界面仅显示“启动失败”无具体端口信息。真实排查路径如下查Windows应用事件日志打开eventvwr.msc→ Windows日志 → 应用程序 → 筛选来源为DesigoCC.SMC→ 查找事件ID1001典型错误Failed to start project MyProject on port 8080: Address already in use (0x000000WSA_EADDRINUSE)定位占用端口的进程在管理员CMD中执行netstat -ano | findstr :8080 tasklist | findstr 12345 // 12345为上步查到的PID若PID对应java.exe大概率是另一套Desigo CC测试环境若为System则端口被Windows服务如IIS占用。修改端口的正确姿势不要在SMC界面直接改——这会导致项目配置文件ProjectConfig.xml与SMC内存状态不一致。正确做法关闭SMC用文本编辑器打开C:\ProgramData\Siemens\DesigoCC\GMSProjects\MyProject\ProjectConfig.xml修改HttpPort8080/HttpPort为未占用端口如8081重启SMC右键项目 → “重新加载配置”。4.2 客户端连接失败的三层权限链从Windows共享到SQL Server登录手册第18页要求“设置项目文件夹共享和安全访问权限”这实际是三段式权限链层级对象必需权限验证命令Windows文件共享\\ServerName\DesigoCC_ProjectsReadforEveryone仅限内网net share查看共享名icacls C:\ProgramData\Siemens\DesigoCC\GMSProjects /grant Everyone:(RX)NTFS文件系统C:\ProgramData\Siemens\DesigoCC\GMSProjects\MyProject\Read ExecuteforNETWORK SERVICESMC服务账户icacls C:\ProgramData\Siemens\DesigoCC\GMSProjects\MyProject /grant NT AUTHORITY\NETWORK SERVICE:(OI)(CI)(RX)SQL Server登录desigo_cc_svc账户CONNECT SQLVIEW SERVER STATESELECT name, type_desc FROM sys.server_principals WHERE name desigo_cc_svc;常见翻车点客户为“安全”起见禁用了Everyone组的共享权限结果SMC能启动项目但客户端连接时弹窗“无法访问项目文件夹”。此时必须保留Everyone的共享读取权靠NTFS权限控制精细访问。4.3 事件处理行为配置的玄学参数EventProcessingInterval不是越小越好手册第2页提到“配置项目以控制事件处理的行为”核心参数是EventProcessingInterval事件处理间隔位于SMC → 项目属性 → “事件”选项卡。手册未说明其取值逻辑默认值5000毫秒SMC每5秒轮询HDB的EventLog表新记录设为1000看似响应更快但实测导致SQL Server CPU飙升30%因高频SELECT TOP 100 * FROM EventLog WHERE Processed0引发锁竞争血泪经验BA项目建议设为3000030秒消防报警类项目可降至1000010秒但必须同步调整SQL Servermax degree of parallelism为1避免并行查询争抢资源。验证效果在SMC中触发一个测试报警如手动置位/System/Test/Alarm点观察HDB中EventLog.Processed字段更新时间差应≈设定间隔±2秒。5. 备份与恢复为什么“备份数据库”按钮不能替代SQL Server维护计划5.1 SMC备份的局限性只备份项目配置不备份HDB数据文件手册第1页列出“备份项目和历史数据库”但SMC的“备份”功能右键项目 → “备份”实际只导出ProjectConfig.xml项目结构Graphics\目录图形文件Reports\目录报表模板Drivers\目录驱动配置不包含HDB的.mdf和.ldf文件这意味着若HDB损坏SMC备份无法恢复报警历史、趋势数据。提示真正的HDB备份必须通过SQL Server维护计划执行。在SSMS中展开“管理” → “维护计划” → 新建维护计划拖入“备份数据库任务” → 设置目标为DesigoCC_HDB_{项目名}调度设为每日凌晨2:00备份类型选“完整”将备份文件存至D:\DesigoCC\Backups\HDB\独立磁盘避免与HDB同盘。5.2 备份文件的双重校验SMC校验码 SQL Server RESTORE VERIFYONLYSMC生成的备份文件.dcb格式自带SHA-256校验码但仅验证文件完整性不保证可恢复性。必须执行SQL Server级校验-- 在备份后立即执行替换路径为实际备份位置 RESTORE VERIFYONLY FROM DISK D:\DesigoCC\Backups\Projects\MyProject_20231001.dcb WITH CHECKSUM; -- 返回VERIFY SUCCESSFUL才表示备份可用若返回Msg 3241, Level 16, State 7说明备份文件损坏需重新备份。曾有项目因NAS存储缓存未刷写导致.dcb文件末尾字节丢失SMC校验通过但RESTORE失败。5.3 恢复模板时的备份覆盖陷阱SMC不提示但会静默删除旧HDB手册未警告当用“恢复项目模板”覆盖现有项目时SMC会自动删除原项目关联的HDB即使你未勾选“删除旧HDB”。这是为防止模板HDB Schema与旧HDB不兼容导致启动失败。规避方案恢复前先用SQL ServerBACKUP DATABASE命令备份原HDB或在SMC中先“停用”项目右键 → “停用”再执行模板恢复恢复完成后手动在SQL Server中执行-- 将旧HDB数据迁移到新HDB需表结构兼容 INSERT INTO NewHDB.dbo.EventLog SELECT * FROM OldHDB.dbo.EventLog WHERE Timestamp 2023-09-01;6. SMC深度排错技巧用Process Monitor捕获SMC黑匣子行为定位90%的“无报错失败”6.1 为什么SMC日志不够用它只记录业务逻辑不记录系统调用Desigo CC SMC的日志文件C:\ProgramData\Siemens\DesigoCC\Logs\SMC.log只输出“项目启动成功”“HDB连接建立”“模板恢复完成”。但不记录尝试连接SQL Server时使用的IP和端口读取ProjTemplates目录时遭遇的ACCESS_DENIED加载DesigoCC.SMC.dll时缺失的VC运行库。这就导致大量“点击无反应”“进度条卡住”类问题无法定位。我的标准动作是用ProcMon微软官方免费工具实时捕获SMC行为。6.2 ProcMon实战三步锁定SMC失败根源步骤1过滤SMC进程启动ProcMon →Filter→Filter...→Process NameisDesigoCC.SMC.exe→Add→OK取消勾选Registry和Network只留File System初期聚焦文件权限。步骤2复现问题并捕获关键错误在SMC中点击“创建HDB”观察ProcMon结果栏按Result列排序查找NAME NOT FOUND或PATH NOT FOUND典型发现C:\ProgramData\Siemens\DesigoCC\GMSProjects\GMSMainProject\ProjTemplates\路径下CreateFile返回PATH NOT FOUND→ 证实模板目录不存在或路径拼写错误。步骤3开启网络监控定位SQL连接问题清空ProcMon日志 →Filter→ 添加新规则Process NameisDesigoCC.SMC.exeANDOperationisTCP Connect点击“创建HDB” → 查看Path列显示的192.168.1.100:1433→ 若Result为TIMEOUT证明网络不通若为CONNECTION REFUSED证明SQL Server未监听该端口。6.3 SMC启动失败的终极后悔药重置SMC配置而不重装当SMC完全无法启动双击无反应、任务管理器无进程90%是配置文件损坏。不要重装Desigo CC执行以下操作关闭所有Desigo CC相关服务services.msc中停止DesigoCC_*服务重命名配置目录ren C:\ProgramData\Siemens\DesigoCC\SMCConfig SMCConfig_BAK重启SMC —— 它会自动生成全新配置此时再导入备份的ProjectConfig.xml即可。这个操作比重装节省4小时且保留所有已安装的扩展模块。从那以后我每次重大配置变更前都强制执行robocopy C:\ProgramData\Siemens\DesigoCC\SMCConfig D:\Backup\SMCConfig_%date:~-4,4%%date:~-10,2%%date:~-7,2% /E把SMC配置当成生产数据来备份。希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑