我按照我们想要的方式设置了Windows Server 2012虚拟机。 我closures了实例,创build了一个.vhdx虚拟驱动器的副本,然后创build一个新的虚拟机并附加了该驱动器的副本。
我启动了新的虚拟机,一切正常。 然后我开始在新的虚拟机上运行SysPrep,这样它就不会和原来的冲突了,我可以同时运行它们。
运行Sysprep后,我必须在启动实例(预期行为)时input一个CD-Key,并且必须为新VM创build一个帐户。
SQL Server Express仍然安装,我可以连接。 但是,每当我尝试展开数据库,我收到一条错误消息The database [DbName] is not accessible. (Object Explorer) The database [DbName] is not accessible. (Object Explorer)
我也注意到我创build的SQL用户现在已经不在了。
有谁知道为什么发生这种情况或如何恢复?
计算机名称在sysprep期间得到更改,并且需要手动使SQL Server知道这一点。 尝试使用sysadmin权限运行此操作:
sp_dropserver <old_name\instancename>; GO sp_addserver <new_name\instancename>, local; GO
然后重新启动SQL实例。 对于SQL Express,您很可能需要用sqlexpressreplaceinstancename 。
这里是TechNet的文章解释重命名主机。