Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách tìm vị trí của tệp dữ liệu và tệp nhật ký trong SQL Server

Nếu bạn cần biết các tệp cơ sở dữ liệu của mình nằm ở đâu, hãy chạy mã T-SQL sau:

USE master;
SELECT 
  name 'Logical Name', 
  physical_name 'File Location'
FROM sys.master_files;

Thao tác này sẽ trả về danh sách tất cả các tệp dữ liệu và tệp nhật ký cho phiên bản SQL Server.

Đây là giao diện khi tôi chạy mã đó trong SQL Operations Management Studio trên máy Mac:

Nếu bạn sử dụng Windows, đường dẫn của bạn sẽ giống như đường dẫn Windows. Một cái gì đó như thế này:

C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\Music.mdf

Mặc dù, nếu bạn chỉ định vị trí của riêng mình, nó có thể dễ dàng trông giống như sau:

D:\data\Music.mdf

Những tệp này là gì?

Khi bạn tạo cơ sở dữ liệu trong SQL Server, các tệp dữ liệu và tệp nhật ký giao dịch sẽ tự động được tạo.

  • Tệp dữ liệu chứa dữ liệu và các đối tượng như bảng, chỉ mục, thủ tục được lưu trữ và chế độ xem.
  • Các tệp nhật ký giao dịch ghi lại tất cả các giao dịch và các sửa đổi cơ sở dữ liệu được thực hiện bởi mỗi giao dịch. Các tệp nhật ký giao dịch chứa thông tin cần thiết để khôi phục tất cả các giao dịch trong cơ sở dữ liệu.

Nếu bạn không chỉ định rõ ràng vị trí và tên cho các tệp này, SQL Server sẽ đặt chúng ở vị trí mặc định (vị trí mặc định được chỉ định ở cấp máy chủ). Dưới đây là cách tìm vị trí mặc định cho tệp dữ liệu và tệp nhật ký trong SQL Server.

Tìm tệp cho cơ sở dữ liệu cụ thể

Nếu bạn chỉ cần tìm vị trí của các tệp cho một cơ sở dữ liệu cụ thể, bạn có thể truy vấn sys.database_files thay vào đó, chế độ xem danh mục hệ thống. Chỉ cần chuyển sang cơ sở dữ liệu hiện hành và chạy truy vấn.

Đây là một ví dụ:

USE Solutions;
SELECT
  name 'Logical Name', 
  physical_name 'File Location'
FROM sys.database_files;

Thao tác này sẽ chỉ trả về dữ liệu và tệp nhật ký cho Solutions cơ sở dữ liệu.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Có thể đặt lược đồ mặc định từ chuỗi kết nối không?

  2. Học máy có ý nghĩa như thế nào đối với các chuyên gia cơ sở dữ liệu

  3. Không thể tìm thấy microsoft.sqlserver.batchparser.dll

  4. cách hiệu quả để triển khai phân trang

  5. Nhóm luôn sẵn sàng của SQL Server:Cài đặt và cấu hình, Phần 1