命令行装载微软Sql Server数据库的备份文件
其实这些都是伴随微软Sql Server数据库平台的研发,很古老的技术了,只是过去常被我们用于软件内部,被编译了,你看不见而已(下面的语句,去掉Dos命令osql -E -q "*****************"的封装就是了):
一、如果需要恢复的数据库名对应的数据库正处于使用状态
osql -E -q "RESTORE FILELISTONLY FROM DISK = 'E:\TestData\data01\Test_Data01.dat' " >E:\TestData.txt
osql -E -q " Alter Database User_Jiaju_Chuangdian_LanMengShi_2021 set Offline with rollback immediate "
osql -E -q " RESTORE DATABASE Test_Data01 FROM DISK = 'E:\TestData\data01\Test_Data01.dat' WITH RECOVERY, REPLACE , MOVE 'qy_erp_data' To 'E:\TestData\data01\Test_Data01.mdf', MOVE 'qy_erp_log' TO 'E:\TestData\data01\Test_Data01_log.ldf' "
osql -E -q " Alter Database User_Jiaju_Chuangdian_LanMengShi_2021 set Online with rollback immediate "
二、全新加载未处于使用状态的数据库
osql -E -q " RESTORE DATABASE Test_Data01 FROM DISK = 'E:\TestData\data01\Test_Data01.dat' WITH RECOVERY, REPLACE , MOVE 'qy_erp_data' To 'E:\TestData\data01\Test_Data01.mdf', MOVE 'qy_erp_log' TO 'E:\TestData\data01\Test_Data01_log.ldf' "
-- 其中,qy_erp_data和qy_erp_log是你当初在创建数据库时,所使用的逻辑名对应的物理组文件名(数据文件mdf:qy_erp_data.mdf,及日志文件ldf:qy_erp_log.ldf)
只是伴随软件开发与运营方式的转变,DevOps要求我们,要以CLI的方式,来远程自动化地部署软件,无论是处于服务端的需要,还是缘自客户端的;抑或无论是云服务器的,还是负载均衡的各节点。
未来,不,就是现在,CLI又重新穿越回归啦。
本博客相关:
《程序员,您到底应该做什么?肺腑之言》https://blog.csdn.net/pulledup/article/details/115048900
关于跨域跨节点的相关知识,可参考以下两篇文章中穿插的内容:
《delphi使用MS Sql Server数据库的分布式查询》
喜欢的话,就在下面点个赞、收藏就好了,方便看下次的分享:
扫描二维码关注公众号,回复:
13141463 查看本文章
