--------------------------------------------------------------------------------------------------
-- 发布库TestDB(停止日志读取器代理、队列读取器代理,禁止用户访问)
--------------------------------------------------------------------------------------------------
USE master
GO
SELECT file_id,name,type_desc,physical_name,state_desc
FROM sys.master_files WHERE database_id = DB_ID('TestDB');
GO
ALTER DATABASE TestDB SET SINGLE_USER --WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE TestDB MODIFY FILE ( NAME = TestDB, NEWNAME= 'NewFileName', FILENAME = "E:\DatabaseFile\TestDB\NewFileName.MDF")
ALTER DATABASE TestDB MODIFY FILE ( NAME = TestDB_log, NEWNAME= 'NewFileName_log', FILENAME = "E:\DatabaseFile\TestDB\NewFileName_log.LDF")
GO
ALTER DATABASE TestDB SET OFFLINE
GO
EXEC sp_configure 'show advanced options',1
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell',1
RECONFIGURE
GO
EXEC master..xp_cmdshell 'MOVE "E:\DatabaseFile\TestDB\TestDB.MDF" E:\DatabaseFile\TestDB\'
EXEC master..xp_cmdshell 'MOVE "E:\DatabaseFile\TestDB\TestDB_log.LDF" E:\DatabaseFile\TestDB\'
GO
EXEC master..xp_cmdshell 'ren "E:\DatabaseFile\TestDB\TestDB.MDF" "NewFileName.mdf"'
EXEC master..xp_cmdshell 'ren "E:\DatabaseFile\TestDB\TestDB_log.LDF" "NewFileName_log.ldf"'
GO
EXEC sp_configure 'xp_cmdshell',0
RECONFIGURE
GO
EXEC sp_configure 'show advanced options',0
RECONFIGURE
GO
ALTER DATABASE TestDB SET ONLINE
GO
ALTER DATABASE TestDB SET MULTI_USER
GO --------------------------------------------------------------------------------------------------
-- 订阅库TestDBSub (停止分发代理、队列读取器代理,禁止用户访问)
--------------------------------------------------------------------------------------------------
USE master
GO
SELECT file_id,name,type_desc,physical_name,state_desc
FROM sys.master_files WHERE database_id = DB_ID('TestDBSub');
GO
ALTER DATABASE TestDBSub SET SINGLE_USER --WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE TestDBSub MODIFY FILE ( NAME = TestDBSub, NEWNAME= 'NewFileName', FILENAME = "E:\DatabaseFile\TestDBSub\NewFileName.mdf")
ALTER DATABASE TestDBSub MODIFY FILE ( NAME = TestDBSub_log, NEWNAME= 'NewFileName_log', FILENAME = "E:\DatabaseFile\TestDBSub\NewFileName_log.ldf")
GO
ALTER DATABASE TestDBSub SET OFFLINE
GO
EXEC sp_configure 'show advanced options',1
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell',1
RECONFIGURE
GO
EXEC master..xp_cmdshell 'MOVE "E:\DatabaseFile\TestDBSub\TestDBSub.mdf" E:\DatabaseFile\TestDBSub\'
EXEC master..xp_cmdshell 'MOVE "E:\DatabaseFile\TestDBSub\TestDBSub_log.ldf" E:\DatabaseFile\TestDBSub\'
GO
EXEC master..xp_cmdshell 'ren "E:\DatabaseFile\TestDBSub\TestDBSub.mdf" "NewFileName.mdf"'
EXEC master..xp_cmdshell 'ren "E:\DatabaseFile\TestDBSub\TestDBSub_log.ldf" "NewFileName_log.ldf"'
GO
EXEC sp_configure 'xp_cmdshell',0
RECONFIGURE
GO
EXEC sp_configure 'show advanced options',0
RECONFIGURE
GO
ALTER DATABASE TestDBSub SET ONLINE
GO
ALTER DATABASE TestDBSub SET MULTI_USER
GO --------------------------------------------------------------------------------------------------
-- 分发库distribution(停止分发代理、日志读取器代理、队列读取器代理,禁止用户访问)
--------------------------------------------------------------------------------------------------
USE master
GO
SELECT file_id,name,type_desc,physical_name,state_desc
FROM sys.master_files WHERE database_id = DB_ID('distribution');
GO
ALTER DATABASE distribution SET SINGLE_USER --WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE distribution MODIFY FILE ( NAME = distribution, NEWNAME= 'NewFileName', FILENAME = "E:\DatabaseFile\NewFileName.MDF")
ALTER DATABASE distribution MODIFY FILE ( NAME = distribution_log, NEWNAME= 'NewFileName_log', FILENAME = "E:\DatabaseFile\NewFileName_log.LDF")
GO
ALTER DATABASE distribution SET OFFLINE
GO
EXEC sp_configure 'show advanced options',1
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell',1
RECONFIGURE
GO
EXEC master..xp_cmdshell 'MOVE "E:\DatabaseFile\distribution.MDF" E:\DatabaseFile\'
EXEC master..xp_cmdshell 'MOVE "E:\DatabaseFile\distribution.LDF" E:\DatabaseFile\'
GO
EXEC master..xp_cmdshell 'ren "E:\DatabaseFile\distribution.MDF" "NewFileName.mdf"'
EXEC master..xp_cmdshell 'ren "E:\DatabaseFile\distribution.LDF" "NewFileName_log.ldf"'
GO
EXEC sp_configure 'xp_cmdshell',0
RECONFIGURE
GO
EXEC sp_configure 'show advanced options',0
RECONFIGURE
GO
ALTER DATABASE distribution SET ONLINE
GO
ALTER DATABASE distribution SET MULTI_USER
GO -------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------

SQLServer 本地移动发布/订阅/分发数据库文件并更改逻辑名称和物理文件名的更多相关文章

  1. SQLServer 2008 R2 发布订阅配置指南

    原以为配置SQLServer 2008 R2的发布订阅很简单,实际配置后才发现过程中有问题地方一直都没搞明白,最后经过几天的查找问题和实践,终于搞定了.现将过程记录如下. SQLServer 2008 ...

  2. SQL SERVER 2005修改数据库名称,包括物理文件名和逻辑名称

    SQL SERVER 2005修改数据库名称,包括物理文件名和逻辑名称   原来数据库名称为 aa,物理文件名称为 aa.mdf 和 aa_log.ldf:   需要修改数据库名称为 bb,物理文件名 ...

  3. SQL Sever 2008 数据库文件的备份和还原

    数据库文件备份保存的方式我知道的有两种,第一种就是我们知道到的简单的分离,生成.mdf和.ldf文件,然后使用的时候直接进行附加数据库就可以了. 那么还有生成备份的文件.bak 的,这个操作要在步骤: ...

  4. 修改sql数据库文件 物理文件名称

    -- 允许配置高级选项 EXEC sp_configure 'show advanced options', 1 GO -- 重新配置 RECONFIGURE GO -- 启用xp_cmdshell ...

  5. 使用MediatR重构单体应用中的事件发布/订阅

    标题:使用MediatR重构单体应用中的事件发布/订阅 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/10640280.html 源代码:https ...

  6. Vue中的发布订阅分析(Vue2/3中的 emit 实现)

    Vue中的发布订阅模式分析 模块:instanceEventEmiiter.ts(在下方有简单实现和解析) 在Vue3中,已经取消了对这个模块的引用,故而不再支持 $on.$off.$once相关的方 ...

  7. SQL Server 合并复制如何把备份的发布端或订阅端BAK文件还原为数据库

    SQL Server的合并复制,是可以备份发布端和订阅端数据库为BAK文件的,但是问题是合并复制在数据库中自动创建的系统表.触发器.表中的RowGuid列等也会被一起备份. 这里我们举个例子,下面图中 ...

  8. Winform访问本地SQLServer数据库文件

    Winform访问本地SQLServer数据库文件 1.项目中添加config配置,如下: <configuration> <connectionStrings> <ad ...

  9. sqlserver关于发布订阅replication_subscription的总结

    (转载)sqlserver关于发布订阅replication_subscription的总结 来自 “ ITPUB博客 ” ,原文地址:http://blog.itpub.net/30126024/v ...

随机推荐

  1. Python缩小图像

    LyncLynn用途: 缩小图像 # -*- coding: UTF-8 -*- #Version: V1.0 #Author:lynclynn #CreateDate:20151201 #Updat ...

  2. [Error] Error parsing XML: unbound prefix

    发生该错误的代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...

  3. vmstat uptime 系统状态脚本

    #!/bin/bash # # Command :vmstat,uptime #Capture_Stats - Gather System Performance Statistics ####### ...

  4. 【linux】学习6

    鸟哥13章的东西 shell script速度较慢,适合用于系统管理,但不适合处理大量数值运算 var=$((运算内容)) 可以用来做变量的加减乘除求余运算 total=$(($firstnum*$s ...

  5. WebFrom 的js日期控件

    1.WdatePicker.js /* * My97 DatePicker 4.7 Release * License: http://www.my97.net/dp/license.asp */ v ...

  6. [Android Pro] CountDownTimer倒计时

    定时执行在一段时候后停止的倒计时,在倒计时执行过程中会在固定间隔时间得到通知(译者:触发onTick方法),下面的例子显示在一个文本框中显示一个30s倒计时: new CountdownTimer(3 ...

  7. Mysql源码分析--csv存储引擎

    一直想分析下mysql的源码,开始的时候不知道从哪下手,先从csv的文件存储开始吧,这个还是比较简单的.我是用的是mysql5.7.16版本的源码. csv源码文件在mysql源码的mysql-5.7 ...

  8. 重写List集合的ToString方法

    重写方法: public class MyList<T> : List<T> where T : IConvertible { public override string T ...

  9. oracle学习不错的网站

    http://oracle-base.com/articles/linux/rlwrap.php

  10. 413. Arithmetic Slices

    /**************************Sorry. We do not have enough accepted submissions.*********************** ...