Sự khác biệt giữa Shrink Database và File là gì?


Câu trả lời:


36

Đơn giản...

  • DBCC ShrinkDatabase(): thu nhỏ tất cả các tệp
  • DBCC ShrinkFile(): chỉ một tập tin

Ví dụ: bạn có thể gặp sự cố sao lưu nhật ký và nó vượt quá tầm kiểm soát để bạn chạy DBCC ShrinkFile().

Bạn gần như không bao giờ sử dụng ShrinkDatabase.

Trước khi bạn cân nhắc sử dụng một trong hai lệnh, vui lòng đọc blog của Paul Randal về thu nhỏ .

Tôi không thu nhỏ một trong các tệp (mdf, ldf) trừ khi có lý do rõ ràng. Các tập tin có kích thước như vậy bởi vì chúng cần phải có. Bất kỳ blog nào đề xuất làm như vậy là một phần của bảo trì thường xuyên có thể không hiểu cách SQL Server hoạt động.


2
Cảm ơn người đàn ông. bạn đúng rồi. Tôi vừa đọc blog Brent Ozar .. anh ấy thực sự đang chửi thề trong blog của mình "Dừng thu nhỏ các tệp cơ sở dữ liệu của bạn. Nghiêm túc. Ngay bây giờ."

Và khi nó đang làm như vậy, tại sao có những lập luận khác nhau?
Stefan Steinegger

2

Một cơ sở dữ liệu mặc định có hai tệp

MyDb.MDF và MyDb.LDF

Tệp MDF là tệp dữ liệu chứa phân vùng chính. Tùy thuộc vào nhu cầu của bạn, bạn có thể phân vùng cơ sở dữ liệu thành nhiều tệp. Điều này được thực hiện để dữ liệu (một hoặc nhiều bảng) có thể trải rộng trên nhiều tệp thường được đặt trên các ổ cứng riêng biệt để đạt được hiệu suất cao hơn.

Nếu bạn thu nhỏ cơ sở dữ liệu, tất cả các tệp được liên kết với cơ sở dữ liệu đó sẽ bị thu hẹp.

Nếu bạn thu nhỏ một tệp, thì chỉ tệp được chọn sẽ bị thu hẹp.

Bạn chỉ cần sử dụng lệnh Shrink Database. Nhưng nó thường không phải là một thực hành tốt để làm điều này và cũng không phải là một thực hành được đề nghị.

Nếu bạn cho chúng tôi biết vấn đề bạn gặp phải là gì, chúng tôi có thể cung cấp cho bạn thêm thông tin về cách giải quyết.


Oh .. phát hành là máy chủ sản xuất của chúng tôi đang hết dung lượng đĩa. Thêm nhiều đĩa là lý tưởng nhưng tôi đã tự hỏi chúng ta có thể làm gì khác?

0

Nhiều khả năng chúng tôi chỉ sử dụng dbcc shrfile. sp_helpdb 'databasename' cung cấp danh sách các tệp dữ liệu & nhật ký trong cơ sở dữ liệu.

nhấp chuột phải vào studio quản lý, tác vụ-> thu nhỏ-> tệp cung cấp bao nhiêu% bạn có thể thu nhỏ.

những gì chúng ta thu nhỏ lại, nó có thể quay trở lại trên đĩa dưới dạng không gian trống.

ví dụ: sử dụng dbcc Crawfile 'databasename' (fileid, 100)

ở đây 100 là 100 MB

fileid có thể lấy từ sp_helpdb 'databasename'

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.