记一次服务器迁移过程

一、原因

由于虚拟服务器系统出现问题,造成系统不断不定时重启,找不到原因,只好迁移到新的服务器,将服务器ip换成原来的ip来解决问题。

该服务器主要是数据库服务器和一些gis协同服务,还有一些小服务在运行,所有主要是数据是服务器数据库文件(mdf和ldf文件),总共有近三百个G(日志文件太大,单个最大的日志文件又150G),还有数据库的备份文件,也有二百多G。然后就是 其他服务的安装包等等。

二、迁移

先将安装包文件复制到新服务,由于新服务器都是内网,而且没有vpn,只好通过远程原来的服务器,在这个服务器上远程新服务器进行操作,现将SQLserver复制过去,一切都在顺利的进行中。。。

五分钟后,弹出一个错误信息窗口,复制失败了,文件过大,通过直接复制的方式有点行不通呀。

只好换种方式,将需要的资料所在磁盘作为共享盘提供给新服务器,说干就干

先打开远程,点击左下角显示选项

 

然后打开本地资源>详细信息

 

 勾选本机需要共享的磁盘

 

 然后确定连接服务器,进去服务器后就可以看到共享的磁盘

 

 剩下的任务就是将共享磁盘上的资料拷贝到新服务器上面了(注意数据库mdf和ldf文件需要将SQLserver服务停止才能拷贝),这样的好处就是不会因为文件过大造成传输失败,也不会因为远程连接中断造成数据传输失败,但是会暂停,只需要点击重试即可

。。。

一天后,资料文件终于拷贝完了。

三、安装

 接下来就是安装了,首先把SQLserver安装上,经过好一阵的捣鼓,终于安装上了,中间还报了 几次错误,系统缺少更新(KB2919355,KB2919442),还需要安装jdk,否则SQLserver无法正常安装上。

但是安装上后,what!!!,找不到Microsoft SQL Server Management Studio,怎么回事?哦哦,原来SQLserver 2016版本以上需要单独安装,Microsoft SQL Server Management Studio,汗颜,我这是多久没有更新我的SQLserver了。

接下来很顺利安装好Microsoft SQL Server Management Studio ,打开,连接,一切正常,(需要安装的都在下图所示)

SQLserver安装过程遇到如下问题,走到这一步后,没有下一步,之后回去将下图圈中的功能取消,接下来可以继续安装了。

SQLserver安装完后就是安装其他一些服务软件类的,例如gis3.2,在安装的时候,配置协同服务,出现了一个问题,就是怎么登陆也登陆不上,报如下错误

 一直检查不到问题所在,只好重新建一个配置,且SQLserver重新创建一个用户,用该用户配置协同服务,问题解决。

那之前到底是哪出现问题呢?依旧是未解之谜。

不管了,接下来就是讲SQLserver的mdf文件和ldf文件附加到数据库中,进行还原。

 四、CPU使用异常分析

CPU如下图所示,每60秒会达到一次100%,经过查找发现问题是SQLserver Windows NT - 64,还是SQLserver的问题呀

问题来源知道了,但是问题是什么还不知道,这时候需要使用SQLserver的秘密武器-SQLserver profiler来查找问题,打开SQLserver 工具》SQLserver profiler,新建一个跟踪,大约跟踪两分钟的数据即可,另存为.trc文件即可。

 

 将trc文件从服务器拷贝本地电脑,打开SQLserver》工具》SQLserver profiler。并打开刚才的trc文件,打开失败,我本地的SQLserver  Management Studio版本有点低,打不开高版本SQLserver保存的trc文件,

 只好更新本地SQLserver  Management Studio的版本为最新,到官网下载即可。

接下来很顺利打开跟踪文件,接下来就需要将trc文件里的数据导入到数据库中,可以采用在分析工具中另存为>跟踪表>连接数据库>选择表(已经存在temp_trc表结构的情况下使用)

 也可以采用SQL语句的方式导入(没有temp_trc表的情况下)

SELECT * INTO temp_trc
FROM fn_trace_gettable('.trc文件路径', default);

接下来在数据表总就可以进行数据的分析了,查看执行哪些SQL最占CPU内存。

 这样就确定问题所在的SQL,出在了同步日志查询上面,导致查询超时。处理后完美解决问题。

此次服务器迁移算是完美结束了。

posted @ 2021-10-18 18:16  laoyang01  阅读(772)  评论(0编辑  收藏  举报