SQLServer 本地移动发布/订阅/分发数据库文件并更改逻辑名称和物理文件名
--------------------------------------------------------------------------------------------------
-- 发布库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 本地移动发布/订阅/分发数据库文件并更改逻辑名称和物理文件名的更多相关文章
- SQLServer 2008 R2 发布订阅配置指南
原以为配置SQLServer 2008 R2的发布订阅很简单,实际配置后才发现过程中有问题地方一直都没搞明白,最后经过几天的查找问题和实践,终于搞定了.现将过程记录如下. SQLServer 2008 ...
- SQL SERVER 2005修改数据库名称,包括物理文件名和逻辑名称
SQL SERVER 2005修改数据库名称,包括物理文件名和逻辑名称 原来数据库名称为 aa,物理文件名称为 aa.mdf 和 aa_log.ldf: 需要修改数据库名称为 bb,物理文件名 ...
- SQL Sever 2008 数据库文件的备份和还原
数据库文件备份保存的方式我知道的有两种,第一种就是我们知道到的简单的分离,生成.mdf和.ldf文件,然后使用的时候直接进行附加数据库就可以了. 那么还有生成备份的文件.bak 的,这个操作要在步骤: ...
- 修改sql数据库文件 物理文件名称
-- 允许配置高级选项 EXEC sp_configure 'show advanced options', 1 GO -- 重新配置 RECONFIGURE GO -- 启用xp_cmdshell ...
- 使用MediatR重构单体应用中的事件发布/订阅
标题:使用MediatR重构单体应用中的事件发布/订阅 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/10640280.html 源代码:https ...
- Vue中的发布订阅分析(Vue2/3中的 emit 实现)
Vue中的发布订阅模式分析 模块:instanceEventEmiiter.ts(在下方有简单实现和解析) 在Vue3中,已经取消了对这个模块的引用,故而不再支持 $on.$off.$once相关的方 ...
- SQL Server 合并复制如何把备份的发布端或订阅端BAK文件还原为数据库
SQL Server的合并复制,是可以备份发布端和订阅端数据库为BAK文件的,但是问题是合并复制在数据库中自动创建的系统表.触发器.表中的RowGuid列等也会被一起备份. 这里我们举个例子,下面图中 ...
- Winform访问本地SQLServer数据库文件
Winform访问本地SQLServer数据库文件 1.项目中添加config配置,如下: <configuration> <connectionStrings> <ad ...
- sqlserver关于发布订阅replication_subscription的总结
(转载)sqlserver关于发布订阅replication_subscription的总结 来自 “ ITPUB博客 ” ,原文地址:http://blog.itpub.net/30126024/v ...
随机推荐
- uniq 重复行统计
uniq 命令 文字 uniq 是LINUX命令 用途 报告或删除文件中重复的行. 语法 uniq [ -c | -d | -u ] [ -f Fields ] [ -s Characters ] ...
- codeforces 499A.Inna and Pink Pony 解题报告
题目链接:http://codeforces.com/problemset/problem/499/A 题目意思:有两种按钮:1.如果当前观看的时间是 t,player 可以自动处理下一分钟,姑且理解 ...
- C#.NET如何不序列化字段、属性
当我们使用公开属性以及公开字段时,都可以顺利的被序列化, 01.[Serializable] 02.public class MyClass 03.{ 04. public int ID; 05 ...
- 【leetcode】Same Tree(easy)
Given two binary trees, write a function to check if they are equal or not. Two binary trees are con ...
- 如何:使用PicturBox实现类似淘宝网站图片的局部放大功能
转载至http://xuzhihong1987.blog.163.com/blog/static/267315872011822113131823/ 概要: 本文将讲述如何使用PictureBox控件 ...
- (转)Delphi工程文件说明
1.DPR: Delphi Project文件,包含了Pascal代码.应用系统的工程文件2.PAS: Pascal文件,Pascal单元的源代码,可以是与窗体有关的单元或是独立的单元.3.DFM:D ...
- $(inherited) "$(SRCROOT) 修改.a文件的路径 --Library Search Paths
$(inherited) "$(SRCROOT)/.a文件所在的文件名" //如果有多个.a文件格式就像这样 $(inherited) "$(SRCROOT)/xxxx& ...
- 多线程编程4 - NSOperationQueue
一.简介 一个NSOperation对象可以通过调用start方法来执行任务,默认是同步执行的.也可以将NSOperation添加到一个NSOperationQueue(操作队列)中去执行,而且是异步 ...
- 谈谈我的编程之路---WAMP(四)
WAMP的一些配置与使用心得(windows)W-windows,说到windows,其实大家都最熟悉不过了,GUI(graphic user interface)图形界面就没有什么可说的了,基本会用 ...
- JAVA数据库基本操作 (转)
JAVA数据库基本操作指南 Java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接. 一.取得数据库连接 1.用DriverManager取数据库连接 ...