我们最近从 SBS 2003 服务器迁移到 SBS 2008 服务器,因为 SBS 2003 出现了严重的硬件问题。我严格按照迁移指南进行操作,一切似乎都很顺利。直到最近一次更新之后。我注意到 AD 证书服务尚未启动...我启动了它,但它立即停止了。因此,我去了证书颁发机构 MMC 并尝试从那里启动服务,结果得到以下信息:
错误 0xxc8000147(ESE:-327)
因此转到错误日志并查看相关日志:
日志名称:应用程序来源:
Microsoft-Windows-CertificationAuthority日期:2011 年 5 月 23 日上午 7:29:42
事件 ID:17
任务类别:无
级别:错误
关键字:经典
用户:SYSTEM
计算机:********.*********.lan
描述:Active Directory 证书服务未启动:无法初始化 **********-********-CA 的数据库连接。错误 0xc8000147 (ESE:-327)。
事件 XML:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-CertificationAuthority"
Guid="{6A71D062-9AFE-4F35-AD08-52134F85DFB9}"
EventSourceName="CertSvc" />
<EventID Qualifiers="49754">17</EventID>
<Version>0</Version>
<Level>2</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2011-05-23T14:29:42.000Z" />
<EventRecordID>1513838</EventRecordID>
<Correlation />
<Execution ProcessID="0" ThreadID="0" />
<Channel>Application</Channel>
<Computer>******.**********.lan</Computer>
<Security UserID="*****" />
</System>
<EventData Name="MSG_E_DB_INIT_FAILED">
<Data Name="CACommonName">*********-*********-CA</Data>
<Data Name="ErrorCode">Error 0xc8000147 (ESE: -327)</Data>
</EventData>
</Event>
我一直在寻找此问题的解决方案,但确实没有找到任何与 CA 服务错误代码相关的内容。
答案1
我建议删除并重新安装证书颁发机构角色。MS 明确支持此操作,他们甚至提供了 SBS2008 HOWTO这里。
答案2
在我意外删除了 CertLog 中的所有内容(而不仅仅是日志文件)后,eseutil 对我有用。
在 AD 证书服务仍然停止的情况下,我复制回 edb 和 jrs 文件,然后在 edb 上运行 eseutil /p(注意没有日志)并修复了数据库。
然后我启动了 AD 证书服务,没有任何问题。
答案3
esentutl /p - 修复数据库。它会警告您任何事务日志数据都将丢失。
我别无选择,这是唯一对我有用的功能。
答案4
cd \windows\system32\certlog
esentutl /p "sbs2008-ca.edb"
dsa.msc
dssite.msc
dcdiag
repadmin /syncall