背景
同事上周告知性能压测的一个SQLServer数据库出现了宕机的问题.
表现为: Windows机器无故关机后,再也无法开机.
在Windows窗口界面滚动条旋转很久,但是无法进入到系统界面.
里面有一个2T左右的SQLServer数据库.
是一个ESXi6.7虚拟化平台上面的Windows2019 的虚拟机.
服务器是一个全闪的服务器.
处理思路
因为前期自己为了提高数据库的性能, 将操作系统/SQLServer的temp等文件和
压测数据库的数据文件进行了拆分.
temp以及数据库管理文件在 C盘,
数据库的数据文件我放到了D盘
基于此 我想挂载一下D盘来抢救数据文件.
然后通过分离附加来抢救数据
处理过程
1. 上传ISO文件, 因为上一个是2019环境出现了宕机
所以我准备降级到Win2016的环境
2. 安装操作系统, 需要注意, ESXi和这个版本有兼容性问题
需要使用控制台进行安装驱动才可以使用浏览器看到鼠标.
3. 上传.net 4.8 以及 SQLServer 2019的安装盘
需要注意, 需要先安装SQLServer 2019
4. 安装完 SQLServer后不需安装 .net 4.8 然后安装SSMS
需要说明 SSMS 是必须 使用.net 4.8的.
5. 使用SSMS进行数据库的分离附加操作.
分离附加的过程
1. 在系统级数据库邮件, 选择附加文件.
2. 勾选mdf, 默认应该会自动关联上ldf文件.
3. 数据库附件完成后, 需要在系统级的安全性上面添加用户.
4. 需要注意添加的用户, 默认数据库建议选择附加的数据库.
5. 打开查询界面, use 附加的数据库. 然后执行如下sql
sp_change_users_login 'Update_one','username','username'
恢复完成
其他注意事项
1. 如果超过40个CPU, 需要使用core级别的序列号.
我这边的选用的是enterprice, 无法使用超过40个CPU,需要升级一下.
2. 虚拟机的CPU和内存我这边还没有处理.
3. 数据库的最大使用内存, temp表空间的相关限制还没有进行处理.
4. C盘仅有500G空间, 不知道TEMP的情况下是否够用.
文章转载自济南小老虎,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




