我昨天购买了我的第一个 VPS,并且安装了Microsoft SQL Server 2012 Express在上面。
然后我重启了我的 VPS。但是 SQL Server 服务没有启动。我尝试手动启动它,但它无法启动:
问题是什么?如何解决?
附言:这是我的第一次服务器管理,我是新手,如果您需要有关此方面的更多详细信息,请发表评论。我会更新问题。
更新 1:这是来自事件查看器的一些日志详细信息,我认为它们可能对此问题有用:
FCB::打开失败:无法打开文件 e:\sql11_main_t.obj.x86release\sql\mkmastr\databases\objfre\i386\MSDBData.mdf 中的文件编号 1。操作系统错误:3(系统找不到指定的路径。)。
资源数据库构建版本为 11.00.3000。这只是一条信息性消息。无需用户执行任何操作。
FileMgr::StartLogFiles: 创建或打开文件“e:\sql11_main_t.obj.x86release\sql\mkmastr\databases\objfre\i386\MSDBLog.ldf”时发生操作系统错误 2(系统找不到指定的文件。)。诊断并更正操作系统错误,然后重试操作。
启动数据库‘模型’。
FCB::打开失败:无法打开文件 e:\sql11_main_t.obj.x86release\sql\mkmastr\databases\objfre\i386\model.mdf 中的文件编号 1。操作系统错误:3(系统找不到指定的路径。)。
FileMgr::StartLogFiles: 创建或打开文件“e:\sql11_main_t.obj.x86release\sql\mkmastr\databases\objfre\i386\modellog.ldf”时发生操作系统错误 2(系统找不到指定的文件)。诊断并更正操作系统错误,然后重试操作。
我对这些感到困惑e:\
,我的 VPS 只有一个 C:\ 驱动器,那么 e:\ 是什么?
答案1
NET START MSSQL$SQLEXPRESS /f /T3608
SQLCMD -S .\SQLEXPRESS
1>SELECT name, physical_name, state_desc FROM sys.master_files ORDER BY database_id;
Now notice those wrong file names; and run following commands ...
Note: you need to change the file name location ..
1>ALTER DATABASE model MODIFY FILE ( NAME = modeldev, FILENAME = 'c:\model.mdf');
2>ALTER DATABASE model MODIFY FILE ( NAME = modellog, FILENAME = 'c:\modellog.ldf');
3> go
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBData, FILENAME = 'c:\MSDBData.mdf');
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBLog, FILENAME = 'c:\MSDBLog.ldf');
ALTER DATABASE tempdb MODIFY FILE ( NAME = tempdev, FILENAME = 'c:\temp.mdf');
ALTER DATABASE tempdb MODIFY FILE ( NAME = templog, FILENAME = 'c:\temp.ldf');
go
exit;
NET STOP MSSQL$SQLEXPRESS