sql server 数据库复制与服务的挂起中

前言

 

这几天和数据库打交道,每天不遇到几个问题,都有点不适应了

 

数据库的复制

方案一:

我们在转移比较小的数据库的时候,我们可以通过右击数据库,点击-->任务-->分离,然后确定

如果你找不到你的数据库在哪里?你可以右击数据库,属性,文件,找到数据库的路径,然后复制就好了

但是这样操作,你需要在复制之后,再把数据库附加上。

 

方案二:

但是如果你直接去复制的话,你会发现系统明明没有使用你要调用的数据库,但是系统会提示你,数据库被打开,无法被复制

 

解决方法:

打开SQL Server的配置管理器,然后将有关于你本地数据库的SQL服务关闭,这时候,你就可以复制你的数据库了

 


 

SQL Server 服务的挂起

 

这个问题紧随其后,我复制完数据库的时候,我需要再次打开SQL服务,但是打不开了,显示SQL服务挂起恢复中

如下图:

解决方案:

  1. win+R
  2. 输入regedit
  3. 找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 位置
  4. 删除PendingFileRenameOperations
  5. 重启电脑
  6. 打开SQL配置管理器,再次打开上图服务

 

原因:

按照名称来理解,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager应该存放的是当前系统会话的快照,而PendingFileRenameOperations记录的是一个未成功进行的文件更名操作,SQL Server2000在安装时可能会使用这个键值,记录在安装过程中对临时文件的操作,如果SQL Server2000在安装进程启动时就发现这个键值存在,它就认为上一个安装程序没有完成,从而拒绝继续自身的安装进程。
而按照道理,任何一个改写过此键值的程序都应当在结束或者系统重新启动的时候将这个键值删除,但如果由于种种原因这个操作没有被进行的话,那么SQL Server2000自然会得出错误的结论。

 

SQL Server数据库出现挂起(suspended)状态,可能是由于多种原因导致的,例如系统资源不足、长间的锁等待、长间的阻塞等。为了恢复数据库的正常运行,可以采取以下几个步骤: 1. 找出导致数据库挂起的原因:通过查看SQL Server错误日志、系统日志以及活动监视器等工具,可以获得关于挂起原因的详细信息。这些信息有助于定位问题及制定恢复策略。 2. 解决导致数据库挂起的问题:根据挂起原因采取相应的解决措施。例如,如果是系统资源不足导致的挂起,可以优化数据库的查询语句,调整系统的内存和CPU分配等;如果是长间的锁等待导致的挂起,可以检查并优化数据库的索引、重构查询语句等;如果是长间的阻塞导致的挂起,可以找到并解决造成阻塞的会话。 3. 重新启动数据库服务:在解决了导致数据库挂起的问题后,可尝试重新启动SQL Server数据库服务。重启后,数据库将重新加载并尝试自动恢复到正常运行状态。 4. 数据库恢复技术:如果上述步骤无法解决数据库挂起问题,可以采用数据库恢复技术来修复数据库。例如,可以使用SQL Server的日志备份和还原功能来还原数据库到某个间点的状态,或者使用数据库镜像、数据库复制等技术来实现数据库的高可用性和故障转移。 在实际操作,根据具体的情况选择合适的恢复策略。尽量避免数据库挂起发生,可以通过定期优化数据库的性能、监控系统资源的使用情况、合理设置数据库参数等方式进行预防。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值