SQL Server实例名变为.\SQLEXPRESS后,如何连接原有数据库?
解决SQL Server实例名称变更后无法连接原有数据库的方案
1. 确认SQL Server服务状态
- 按下Win+R输入
services.msc回车打开服务列表 - 找到
SQL Server (SQLEXPRESS)服务,确保它处于运行状态;没运行的话右键启动,把启动类型设为自动,避免重启后失效
2. 用新实例名称直接连接
- 打开SQL Server Management Studio(SSMS),服务器名称填
.\SQLEXPRESS或localhost\SQLEXPRESS,选对应身份验证方式(Windows或SQL Server)尝试连接 - 用命令行的话,执行
sqlcmd -S .\SQLEXPRESS -E(-E代表Windows身份验证)
3. 附加原有数据库文件
- 先确认原有数据库的.mdf和.ldf文件位置(默认路径一般是
C:\Program Files\Microsoft SQL Server\MSSQL16.SQLEXPRESS\MSSQL\DATA,版本号可能随SQL Server版本变化) - 连接到.\SQLEXPRESS实例后,右键「数据库」→「附加」,点击「添加」选中对应的.mdf文件,确认后完成附加
- 如果提示权限不足,右键数据库文件→「属性」→「安全」,给
NT SERVICE\MSSQL$SQLEXPRESS用户添加读取/写入权限
4. 配置原服务器名称别名(可选,想用原名称连接时)
- 方法一:在SSMS中执行SQL语句添加链接服务器
EXEC sp_addlinkedserver @server = N'原本地服务器名称', @srvproduct=N'', @provider=N'SQLNCLI', @datasrc=N'.\SQLEXPRESS';
- 方法二:用SQL Server配置管理器,打开「SQL Server Native Client 配置」→「别名」,右键新建别名:别名设为原服务器名称,服务器填
.\SQLEXPRESS,协议选TCP/IP或Named Pipes,端口可在配置管理器的「SQL Server网络配置」中查看SQLEXPRESS的端口号
5. 验证连接可用性
- 附加完成后,在SSMS里检查数据库列表,确认原有数据库已显示,尝试展开表、执行简单查询验证正常
- 应用程序的话,把连接字符串里的服务器名改成
.\SQLEXPRESS,比如:Server=.\SQLEXPRESS;Database=你的数据库名;Integrated Security=True;
内容的提问来源于stack exchange,提问作者Rakesh Kumar
相关产品推荐
相关产品推荐

