如下圖:
若有有A,B,C 三個DB
因為都是由A COPY 過來
資料庫 邏輯名稱 實體名稱
A XXT_Data E:\MSSQL\DATA\XX_TEST.mdf
A XXT_Data_Log E:\MSSQL\DATA\XX_TEST.ldf
B XXT_Data E:\MSSQL\DATA\YY_TEST.mdf
B XXT_Data_Log E:\MSSQL\DATA\YY_TEST.ldf
C XXT_Data E:\MSSQL\DATA\ZZ_TEST.mdf
C XXT_Data_Log E:\MSSQL\DATA\ZZ_TEST.ldf
這樣,邏輯名稱都相同,是否會有影響
可以直接改掉嗎?
2.若我用
DBCC SHRINKFILE (應該是邏輯名稱, 100);
我切換到 C 資料庫
DBCC SHRINKFILE (XXT_Data_Log, 100);
這樣應該不會影響到 A 及B 吧
ALTER DATABASE C
SET RECOVERY SIMPLE;
GO
-- Shrink the truncated log file to 1 MB.
DBCC SHRINKFILE (XXT_Data_log, 100);
GO
-- Reset the database recovery model.
ALTER DATABASE C
SET RECOVERY FULL;
GO
謝謝
邏輯名稱雖然可以一樣,但實務上都會讓它唯一才是
DBCC SHRINKFILE (邏輯名稱, 100),會根據所在 DB 去壓縮該 DB 的檔案,EX
USE A
DBCC SHRINKFILE(邏輯名稱) => 這個是壓縮 A DB 內的邏輯名稱檔案
USE B
DBCC SHRINKFILE(邏輯名稱) => 這個是壓縮 B DB 內的邏輯名稱檔案
官方文章 - DBCC SHRINKFILE 內的範例,一開頭都會 USE DBName 就是要確認要壓縮哪一個 DB 內的邏輯名稱