Windows Server 2012 Hyper-V 重命名 - SQL 数据库问题

Sam*_*Sam 3 virtualization hyper-v virtual-machines sql-server windows-server-2012

我完全按照我们想要的方式设置了 Windows Server 2012 虚拟机。我关闭了实例,制作了 .vhdx 虚拟驱动器的副本,然后启动了一个新的 VM 并附加了驱动器的副本。

我启动了新的 VM,一切正常。然后我继续在新 VM 上运行 SysPrep,这样它就不会与原始 VM 发生冲突,并且我可以同时运行它们。

运行 Sysprep 后,我必须在启动实例时输入 CD-Key(预期行为),并且必须为新 VM 创建一个帐户。

SQL Server Express 仍然安装,我能够连接。但是,每当我尝试扩展数据库时,都会收到一条错误消息The database [DbName] is not accessible. (Object Explorer)

我还注意到我创建的 SQL 用户现在不见了。

有谁知道为什么会发生这种情况或如何恢复?

squ*_*man 6

机器名称在 sysprep 期间发生更改,并且需要手动使 SQL Server 意识到这一点。尝试使用sysadmin特权运行它:

sp_dropserver <old_name\instancename>;
GO
sp_addserver <new_name\instancename>, local;
GO
Run Code Online (Sandbox Code Playgroud)

然后重新启动 SQL 实例。对于 SQL Express,您很可能需要替换instancenamesqlexpress.

这是解释重命名主机的TechNet 文章