Cẩm nang NQDEV
HomeCheat SheetsContact
Công nghệ
Công nghệ
  • Introduction
  • Developer Roadmaps
    • Developer Roadmaps: Mô tả chi tiết
    • Roadmaps: ASP.NET Core Developer
    • Bảng phân loại cấp độ nhà phát triển .NET
    • ClearPath cho Team .NET Core
  • DotNET
    • ASP.NET Core
      • Hướng dẫn sử dụng tệp .http trong Visual Studio 2022 để thực hiện HTTP Requests
    • Message Queue
      • ZeroMQ
        • Xây dựng ZeroMQ Server trong dotNET 8 với CSharp
    • Playwright
      • Playwright: Tự Động Hóa Trình Duyệt Hiệu Quả
    • Optimize
      • Optimize - Một số cách tối ưu code và performance CSharp
    • Dev Blogs
      • Versions of .NET
        • Cập nhật từ .NET 9 lên .NET 10: Những thay đổi quan trọng
      • ASP.NET Core Web API với ASP.NET Core Web API (Native AOT): Bạn nên chọn loại nào?
      • Hướng dẫn xây dựng ứng dụng multi-tenant với .NET Core và MongoDB
      • Kiến Trúc Monolithic và Microservices: Lựa Chọn Phù Hợp Cho Dự Án Của Bạn
  • Design Patterns
    • CQRS Pattern
      • CQRS and MediatR trong .NET Core
    • Microservices
      • Ocelot
  • SQL Server
    • SQL Server Basics
    • SQL Server: DBCC
      • DBCC
      • DBCC SHOW_STATISTICS
      • DBCC SHRINKDATABASE
      • DBCC SHRINKFILE
      • DBCC SQLPERF
      • DBCC FREEPROCCACHE
    • SQL Server Replication
      • Giới thiệu SQL Server Replication
      • Hướng dẫn cấu hình và quản lý SQL Server Replication với Distribution Agent
    • SQL Server: Tập lệnh
      • SQL Server: Tập lệnh để tìm tất cả các giá trị Mặc định với Cột
    • Bảng tạm và sự linh hoạt trong xử lý dữ liệu lớn
    • Các bước để thay đổi nơi lưu trữ tệp log trong SQL Server
    • Các bước di chuyển tệp log trong SQL Server
    • Query Store trong SQL Server - Tổng Quan và Cách Quản Lý Hiệu Quả
    • SQL Server: Error Code
      • SQL Server Error : 14151, Severity: 18. Replication agent
  • Caching
    • Phân tích các phương pháp Caching dữ liệu trong .NET Core và .NET Framework
    • Redis
      • Redis mất dữ liệu khi restart
    • Varnish Cache
      • Hướng Dẫn Cài Đặt Varnish Cache với HAProxy Sử Dụng Docker Compose
  • NodeJS
    • NextJS
      • Hướng dẫn NextJS cho người mới bắt đầu
      • Parallel Routes trong Next.js
      • Hướng dẫn cấu hình Swagger trong NextJS
    • ReactJS
      • Hiểu về hook useRef của React như thế nào cho đúng
      • Tìm hiểu sâu hơn về useEffect từ A-Z
  • OS Linux
    • Tập lệnh Linux hay dùng
    • Centos 7
      • Hướng dẫn cài đặt và cấu hình Centos 7 dành cho người mới bắt đầu
      • Hướng Dẫn Kiểm Tra Các Cổng Đang Mở Trên Hệ Thống CentOS
      • Hướng Dẫn Sử Dụng zip Trên CentOS
      • Hướng dẫn cấu hình iptables để mở tất cả các cổng cho IP private
    • Windows
      • Hướng dẫn quản lý ứng dụng khởi động Windows bằng Registry Editor
  • VMware
    • Cách ảo hóa macOS Sierra trong VMWare Windows 10
    • Tự tin làm chủ mạng lưới: Cẩm nang tính toán địa chỉ IP từ A đến Z
  • Docker
    • Getting Started with Docker
    • Docker HUB
      • nqdev/nginx
  • Templates
    • Tabler Admin Template: Xây dựng Dashboard Quản trị đẹp mắt và dễ dàng
  • Open Source
    • shadcn-ui/ui
    • Kuma UI
    • Midone
  • Ứng dụng
    • Ansible
      • Ansible: Giới thiệu
      • Hướng dẫn chi tiết cài đặt Ansible
    • Apache JMeter
      • Features
        • Hướng dẫn chi tiết về Test Plan trong JMeter
        • Hướng dẫn chi tiết về Thread Group trong JMeter
    • DocFX
      • Những khái niệm cơ bản trong DocFX
      • DocFX - Hướng dẫn cài đặt, cấu hình sử dụng
      • DocFX - Hướng dẫn Markdown
      • DocFX - Hướng dẫn cấu hình file docfx.json
      • DocFX - Hướng dẫn sử dụng và tùy chỉnh Template
    • ETL Tools
      • Công cụ ETL Tools List & Software
      • Airbyte
        • Docker Compose
    • Elasticsearch
      • _reindex
        • Tìm hiểu sâu về API _reindex trong Elasticsearch
        • Hướng dẫn di chuyển dữ liệu trong Elasticsearch sử dụng API _reindex
      • _transform
    • HAProxy
      • HAProxy - Lập trình Lua và tích hợp Redis
    • Localtunnel
      • Hướng dẫn sử dụng Localtunnel để đưa ứng dụng Local lên Internet
    • LoopBack
      • Hướng dẫn cài đặt LoopBack 4 và khởi tạo dự án đầu tiên
    • N8N
      • Hướng dẫn cài đặt n8n bằng docker compose
    • NGINX Plus
      • NGINX: Hiệu suất vượt trội và giải pháp tối ưu cho hệ thống web
      • NGINX: Hướng dẫn chi tiết sử dụng GeoIP2 trên Alpine
      • NGINX: Hướng dẫn sử dụng Lua trên Alpine
      • NGINX: Hướng Dẫn Chi Tiết Cấu Hình Load Balancer
      • NGINX: Hướng Dẫn Sử Dụng Dynamic Modules
      • NGINX: Hướng dẫn Cài đặt và Sử dụng Module njs
      • Tích Hợp NGINX Làm API Gateway với Các Bước Xử Lý Phổ Biến
    • NTP - Secure Timeserver
      • Hướng dẫn cài đặt NTP an toàn với Docker Compose
    • Playwright
      • Playwright: Tự Động Hóa Trình Duyệt Hiệu Quả
    • Wordpress
      • Cách dùng Docker để phát triển ứng dụng Wordpress
  • Tin tức
    • DevSecOps là gì?
    • Giới thiệu bộ công cụ hỗ trợ lập trình từ SmallDev.tools và Code Beautify
    • Giới Thiệu và Hướng Dẫn Về DuckDB
    • Giới thiệu về Các Loại Cơ Sở Dữ Liệu
      • 1. HSQLDB (HyperSQL Database)
    • Hệ thống phân giải tên miền (DNS) và các loại bản ghi
    • Giải thích về Tiền Tố Path Nổi Tiếng – /.well-known
    • Giải mã Hệ thống tạo mã OTP của Google Authenticator
    • Quishing là gì? Hiểu và phòng tránh lừa đảo qua mã QR
  • Hướng dẫn
    • Hướng dẫn chi tiết tạo tài khoản Google bằng email công ty
    • Top 10 ASP .NET Open Source Projects GitHub 2024
    • Free Themes and Templates from Creative Tim
    • Hướng dẫn sử dụng Voler và Mazer Dashboard từ Zuramai
  • So Sánh
    • So Sánh Apache Parquet và CSV: Bảng So Sánh Chi Tiết, Ưu và Nhược Điểm
    • So Sánh Varnish Cache, Memcached và Redis: Ba Công Cụ Caching Phổ Biến trong Tối Ưu Hóa Hiệu Suất
  • Affiliate
    • Tuyển dụng
      • Bộ câu hỏi phỏng vấn T-SQL – Đánh giá ứng viên hiệu quả
    • eSMSvn: Chăm sóc khách hàng hiệu quả với SMS và ZNS
    • eSMS.vn: Giải pháp SMS Marketing hiệu quả cùng các chương trình ưu đãi hấp dẫn
Powered by GitBook
On this page
  • Tóm Tắt Các Bước
  • Lưu Ý Quan Trọng
  • Chi Tiết Từng Bước
  • 1. Kiểm tra vị trí tệp log hiện tại
  • 2. Tắt các kết nối và đặt cơ sở dữ liệu ở chế độ Single User (tùy chọn)
  • 3. Di chuyển tệp Log sang vị trí mới
  • 4. Kiểm tra lại các tệp đã được thay đổi
  • 5. Khởi động lại cơ sở dữ liệu ở chế độ Multi-User (nếu cần thiết)
  • 6. Xoá tệp log cũ (tùy chọn)
  • 7. Backup và Kiểm tra lại

Was this helpful?

  1. SQL Server

Các bước để thay đổi nơi lưu trữ tệp log trong SQL Server

PreviousBảng tạm và sự linh hoạt trong xử lý dữ liệu lớnNextCác bước di chuyển tệp log trong SQL Server

Last updated 5 months ago

Was this helpful?

Để thay đổi vị trí lưu trữ tệp log của một cơ sở dữ liệu trong SQL Server, bạn cần làm theo các bước dưới đây. Việc này giúp bạn quản lý không gian lưu trữ hiệu quả hơn, đặc biệt là khi ổ đĩa lưu trữ log hiện tại đầy hoặc nếu bạn muốn tách các tệp log và dữ liệu ra khỏi nhau để cải thiện hiệu suất.

Tóm Tắt Các Bước

Nếu bạn gặp phải bất kỳ vấn đề nào trong quá trình này, đừng ngần ngại yêu cầu thêm hướng dẫn!

Lưu Ý Quan Trọng

  1. Đảm bảo đường dẫn mới có đủ không gian: Trước khi di chuyển tệp log, đảm bảo rằng ổ đĩa hoặc thư mục đích có đủ dung lượng để chứa tệp log.

  2. Chú ý đến phục hồi trong trường hợp khẩn cấp: Khi di chuyển tệp log, nếu bạn gặp phải sự cố hoặc lỗi, có thể mất khả năng phục hồi cơ sở dữ liệu nếu không sao lưu đầy đủ.

  3. Tránh di chuyển trong quá trình sao lưu hoặc giao dịch lớn: Di chuyển tệp log trong khi có các giao dịch lớn hoặc khi sao lưu có thể gây lỗi hoặc ảnh hưởng đến hiệu suất của cơ sở dữ liệu.

  4. Không di chuyển tệp log trong Recovery Models đặc biệt: Nếu cơ sở dữ liệu đang ở chế độ Full Recovery Model, bạn nên cẩn thận hơn khi di chuyển tệp log, vì các tệp log phục vụ cho việc sao lưu và phục hồi điểm thời gian.

Chi Tiết Từng Bước

1. Kiểm tra vị trí tệp log hiện tại

Trước khi di chuyển tệp log, bạn cần kiểm tra vị trí hiện tại của tệp log trong cơ sở dữ liệu.

-- Kiểm tra vị trí các tệp dữ liệu và log của cơ sở dữ liệu
USE <database_name>;
GO
SELECT name, physical_name AS current_location
FROM sys.master_files
WHERE database_id = DB_ID('<database_name>');

Kết quả trả về sẽ cung cấp tên tệp (name) và vị trí tệp hiện tại (current_location).

2. Tắt các kết nối và đặt cơ sở dữ liệu ở chế độ Single User (tùy chọn)

Để di chuyển tệp log, bạn có thể cần tắt các kết nối tới cơ sở dữ liệu đó. Điều này đảm bảo rằng không có giao dịch nào đang thực hiện trên cơ sở dữ liệu khi bạn thay đổi vị trí tệp.

-- Đặt cơ sở dữ liệu ở chế độ single user (chỉ cho phép một kết nối duy nhất)
ALTER DATABASE <database_name> SET SINGLE_USER WITH ROLLBACK IMMEDIATE;

Lệnh này sẽ ngắt tất cả các kết nối đang mở đến cơ sở dữ liệu và đảm bảo rằng bạn có thể thực hiện các thay đổi mà không gặp phải lỗi khóa.

3. Di chuyển tệp Log sang vị trí mới

Sử dụng câu lệnh ALTER DATABASE để thay đổi vị trí tệp log. Bạn cần xác định đường dẫn mới nơi bạn muốn lưu trữ tệp log.

-- Di chuyển tệp log sang vị trí mới
ALTER DATABASE <database_name>
MODIFY FILE (NAME = <log_file_name>, FILENAME = 'D:\NewLocation\logfile.ldf');

Trong đó:

  • <database_name> là tên của cơ sở dữ liệu.

  • <log_file_name> là tên của tệp log (thường là log hoặc tên khác mà bạn đã cấu hình).

  • 'D:\NewLocation\logfile.ldf' là đường dẫn đầy đủ tới thư mục và tên tệp log mới mà bạn muốn di chuyển đến.

4. Kiểm tra lại các tệp đã được thay đổi

Sau khi thay đổi vị trí của tệp log, bạn có thể kiểm tra lại để chắc chắn rằng tệp log đã được di chuyển thành công.

-- Kiểm tra lại vị trí tệp log sau khi di chuyển
SELECT name, physical_name AS current_location
FROM sys.master_files
WHERE database_id = DB_ID('<database_name>');

5. Khởi động lại cơ sở dữ liệu ở chế độ Multi-User (nếu cần thiết)

Sau khi di chuyển tệp log, bạn có thể chuyển cơ sở dữ liệu về chế độ Multi-User để cho phép nhiều kết nối.

-- Đặt lại cơ sở dữ liệu ở chế độ Multi-User
ALTER DATABASE <database_name> SET MULTI_USER;

6. Xoá tệp log cũ (tùy chọn)

Nếu bạn muốn xoá tệp log cũ sau khi đã di chuyển, bạn có thể sử dụng câu lệnh ALTER DATABASE để loại bỏ tệp log không còn sử dụng nữa.

-- Xoá tệp log cũ (nếu không còn sử dụng)
ALTER DATABASE <database_name>
REMOVE FILE <log_file_name>;

Lệnh này sẽ xóa tệp log cũ mà bạn đã di chuyển sang một vị trí mới.

7. Backup và Kiểm tra lại

Sau khi thay đổi vị trí của tệp log, hãy đảm bảo thực hiện sao lưu lại cơ sở dữ liệu và tệp log để bảo vệ dữ liệu.

-- Backup toàn bộ cơ sở dữ liệu
BACKUP DATABASE <database_name> TO DISK = 'D:\Backups\<database_name>.bak';

-- Backup tệp log
BACKUP LOG <database_name> TO DISK = 'D:\Backups\<database_name>_log.trn';

Kiểm tra vị trí hiện tại của tệp log.
Đặt cơ sở dữ liệu ở chế độ Single-User.
Di chuyển tệp log sang vị trí mới với lệnh ALTER DATABASE.
Kiểm tra lại vị trí của tệp log.
Đặt lại cơ sở dữ liệu ở chế độ Multi-User.
Xoá tệp log cũ nếu cần.
Thực hiện sao lưu lại cơ sở dữ liệu và tệp log.