在异步镜像中移动主数据库文件实战
admin
2023-05-27 09:41:36
0次

在异步数据库镜像中,移动主数据库文件实战


某数据库部署为异步数据库镜像,主数据库所在磁盘空间不足,我得移动主数据库文件到新的磁盘上。


在异步数据库镜像中,应用程序连接到主数据库访问。我们这里要根据你的线上环境考虑选择哪种方式合适:

1. 手动故障转移到镜像库,然后再移动新的镜像数据库文件。

2. 直接移动主数据库文件。


我个人认为,如果业务无法容忍长时间停机,建议先手工故障转移到镜像库,业务切换连接串。如果此时,新的镜像库所在实例上还有其他线上业务数据库,以业务第一,建议重做镜像,将数据库文件放到新的位置。待镜像搭建完成后,再重新手工故障转移回来,业务也指向回来。


由于我们线上业务恰好有停机维护时间窗口。在此期间,我直接移动主数据库。下面,我们先来尝试在业务停机期间,直接移动主数据库文件。


1. 在主数据库上做完整备份,避免出现问题。


2. 在主库上点击“Pause”,暂停镜像会话。


3. 在主库上使用Alter Database指向一个新的位置。

a) 确定WMS数据库的逻辑文件名称以及这些文件在磁盘上的当前位置。

SELECT name, physical_name
FROM sys.master_files
WHERE database_id = DB_ID('WMS');
GO


b) 使用 ALTER DATABASE更改每个文件的位置。

USE master;
GO
ALTER DATABASE WMS
MODIFY FILE (NAME = FLUXWMS_DEMO, FILENAME = ' H:\SQL-LOG\WMS.mdf');
GO


4. 重启主数据库所在实例的SQL Server服务。(这里对于主数据库所在实例上还有其他业务数据库,务必得考虑对其他业务的影响,我们选择移动镜像数据库文件的第二种方法)


5. 移动主数据库文件到一个新位置,并确保文件上的权限也还在。


6. 使WMS数据库 OFFLINE 再 ONLINE,以实施更改。(当然,此时重启SQL Server服务应该也可以,但如果操作的主库所在实例上有其他业务数据库,会受到影响,建议还是在数据库级别操作)

USE master
GO
ALTER DATABASE WMS SET OFFLINE
ALTER DATABASE WMS SET ONLINE
GO


这时,我们再来看看数据库状态。

在主库上:

在异步镜像中移动主数据库文件实战

在异步镜像中移动主数据库文件实战

发现状态已经正常。


7. 在主库上点击“RESUME”,恢复镜像会话。验证镜像状态已同步。

在异步镜像中移动主数据库文件实战


这样也验证了Alter Database移动数据库文件的操作是修改了master系统数据库,而不会被同步到镜像数据库。



相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...