时间:2021-07-01 10:21:17 帮助过:25人阅读
最近在数据库做备份和还原脚本的时候,发现,某些数据库由于'_'的原因导致完整备份出来的文件里的逻辑名是不一样的, 进一步查找发现,其实在创建的数据库的时候没有指定逻辑名的话,系统会生成随机逻辑名,这对批量做脚本和数据库管理带来很大的不方便,所
最近在数据库做备份和还原脚本的时候,发现,某些数据库由于'_'的原因导致完整备份出来的文件里的逻辑名是不一样的, 进一步查找发现,其实在创建的数据库的时候没有指定逻辑名的话,系统会生成随机逻辑名,这对批量做脚本和数据库管理带来很大的不方便,所以从create database 开始 ,使用“[ ]”框住名字,然后写上逻辑名,因为你不知道什么时候自己会用到,或者什么时候别人会用到。
现在就我自己的想法,写一点,我本来的法是遍历非系统数据库,然后备份,然后根据备份还原。由于逻辑名的问题,在迁移数据库文件的时候处理就出问题了,restore filelistonly 查看发现随机名,于是纠结了……查找资料相关有 modify file (name = old,newname = new),但是这个东西的前提是知道old,而这个old的又是自己从restore filelistonly里看出的,然后想获取列表的选项,但是这个貌似不可能……因为显示的列表只能给我们看,不能给我们操作…………纠结啊……最后想了一下,以后如果创建者没有指定逻辑名,那么每次都把带”_“的都修改文件一下,前提是还要先备份一次- -,真他妈啊………………我想找个方法处理从数据库中获取逻辑名然后修改 ~。~
好告一段落……