# Sửa lỗi cài đặt SQL

## Consistency validation for SQL Server registry keys

<figure><img src="/files/sCvNevE52SfAGdLfJZoD" alt=""><figcaption><p>Lỗi khi cài đặt</p></figcaption></figure>

#### Mở Regedit lên tìm theo Key sau để thêm quyền.

#### HKEY\_LOCAL\_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server  - Click chuột phải vào thư mục Microsoft SQL Server  and go to Permission  - Chọn  Advance tab và tích chọn User Everyone rồi tích full control như sau

<figure><img src="/files/yIai737bmVY68jrya1AF" alt=""><figcaption></figcaption></figure>

**Tích xong thì tiến hành khởi động lại máy tính, xong thì vào cài đặt lại SQL SERVER**

## Fusion Active Template Library (ATL)

<figure><img src="/files/IyYW01rjLavE0eJateTe" alt=""><figcaption></figcaption></figure>

Khi cài đặt SQL SERVER sẽ giải nén vào 1 thư mục có tên bất ký dạng ví dụ **D:\343hjk43h221342342jhjedrfe0**

Bạn vào đó tìm tới đường dẫn sau với SQL tương ứng

32bit:  D:\343hjk43h221342342jhjedrfe0<mark style="color:red;">**\1033\_ENU\_LP\x86\Setup\sqlsupport\_msi\sqlsupport.msi**</mark>&#x20;

64bit: D:\343hjk43h221342342jhjedrfe0<mark style="color:red;">**\1033\_ENU\_LP\x64\Setup\sqlsupport\_msi\sqlsupport.msi**</mark>

Chạy file sqlsupport.msi lên cài đặt repaird xong thì khởi động lại máy tính, rồi cài lại SQL

## CANNOT CONNECT TO WMI PROVIDER SQL SERVER CONFIGURATION MANAGER

<figure><img src="/files/eL2RwZnBoOB3GmEwFBLr" alt=""><figcaption></figcaption></figure>

1\.      Vào Run gõ vào cmd nhấn phím Enter để ra cửa sổ copy lệnh sau vào và nhấn Enter để thực hiện

```
mofcomp "%programfiles(x86)%\Microsoft SQL Server\110\Shared\sqlmgmproviderxpsp2up.mof"
```

Sau khi Enter nếu thành công sẽ ra cửa sổ như sau báo DONE !

<figure><img src="/files/rNLaJDijlgHV4vSTYQ05" alt=""><figcaption></figcaption></figure>

Phân loại như sau:

* SQL 2008 – 100
* SQL 2012 – 110
* SQL 2014 – 120
* SQL2016 – 130
* SQL 2017 – 140
* SQL 2019 – 150

2. Vào lại theo đường dẫn này để mở SQL Server Configuration.

&#x20;   C:\Windows\SysWOW64

Chạy file như hình

<figure><img src="/files/J1gvlPj6Q9tK3fQXkIZV" alt=""><figcaption></figcaption></figure>

Chạy xong bật lên như này là được rồi

<figure><img src="/files/CjnqyISQPg7Bsj1UvnXr" alt=""><figcaption></figcaption></figure>

## Hexadecimal Value 0x00 Is an Invalid Character

<figure><img src="/files/iOcJ4RpqfBEUxhRYkjU8" alt=""><figcaption></figcaption></figure>

Nguyên nhân do trong máy đó có cài đặt MSDE (Microsfot Desktop Engine aka SQL 2000 Express) dẫn tới lỗi trên, cần vào control panel gỡ bỏ MSDE đi rồi mới tiếp tục cài đặt SQL 2012.

<figure><img src="/files/rRPDqkJefmST6L79E3AI" alt=""><figcaption></figcaption></figure>

## Could Not Find the Database Engine Startup handle

<figure><img src="/files/zg6t5RxV7Uz4MzqHAO87" alt=""><figcaption></figcaption></figure>

**Cách 1:**

\-          Gỡ SQL cài đặt lỗi ra, vào đường dẫn ổ C để xoá đi thư mục cài đặt SQL ,khởi động lại máy tính

\-          Chạy lại cài đặt SQL SERVER tới bước này chọn lại

<figure><img src="/files/1hAq5ZBfyp0d9QXSUnHu" alt=""><figcaption></figcaption></figure>

Gõ vào SYSTEM rồi nhấn Check Names rồi nhấn OK

<figure><img src="/files/sMmAroZmbqSZ9X9kNCU6" alt=""><figcaption></figcaption></figure>

Thực hiện tiếp việc cài đặt SQL nếu thành công sẽ ko bật ra lỗi kia nữa.

**Cách 2:**

\-          Gỡ sạch sẽ SQL đã cài đặt vào máy, vào đường dẫn ổ C để xoá đi thư mục cài đặt SQL cũ trước đó. Khởi động lại máy tính.

\-          Thực hiện vào đường dẫn Registry tạo thêm 1 key như sau

Add Multi string key in Ragistry this path:- HKEY\_LOCAL\_MACHINE\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device

String Name:-   ForcedPhysicalSectorSizeInBytes

String Value:-   \* 4095

<figure><img src="/files/5FxpS3r1kmddPWfihlmJ" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/Zd9thQnlij0jxgekErz7" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/nEgVPLgVMAdwexEYxj3j" alt=""><figcaption></figcaption></figure>

**HOẶC TẢI LUÔN FILE SAU CHẠY:**&#x20;

{% file src="/files/1fGCMt9uWUCyrdKgMlxD" %}

## The Log Scan Number Passed to Log Scan in Database ‘master’ is not Valid

Cách sửa lỗi: chạy setup của sql theo tham số để fix lại database

```
setup.exe /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS= /SAPWD
```

Cách thủ công:

* Khởi động SQL chế độ single user mode với tham số -m
* Sửa dụng lệnh T-SQL để khôi phục database master

```sql
RESTORE DATABASE master FROM disk='C:\backup\master.bak' WITH REPLACE
```

## Passed to log scan in database ‘Model’ is not valid

<figure><img src="/files/5nXnZxshJlJQVqzsZsIy" alt=""><figcaption></figcaption></figure>

**Bước 1:** Vào đường dẫn sau

&#x20;`C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\Binn\Templates`

**Bước 2:** Copy database **model.mdf** và **modellog.ldf** ở đường dẫn tempplates rồi Paste đè vào

&#x20; `C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA`

**`Bước 3`**`: Khởi động lại SQL Service.`<br>

## SQL SERVER Service change Pending or Stopping

<figure><img src="/files/IKC7DR7xKZv9Sk81XjAP" alt=""><figcaption></figcaption></figure>

Xác định tìm Process ID của ứng dụng SQL SERVER gọi là là số PID trước bằng cách click chuột phải vào Taks Bar của windows, chọn Task manager

<figure><img src="/files/JPpTILSr2KmYcLlkPDVg" alt=""><figcaption></figcaption></figure>

Chuyển qua tab Detail như hình để tìm dịch vụ : sqlservr.exe và nhìn vào cột PID phía trên để lấy con số PID, ví dụ như hình kia là 18460

<figure><img src="/files/n1UtEu6tTnNKEGKjsc2b" alt=""><figcaption></figcaption></figure>

Sau đó vào Run, gõ vào CMD vào chạy lệnh như sau để ép thoát nóng ứng dụng đang chạy

```
taskkill /PID Số PID  /f
```

sau đó Enter như hình báo thành công là được, khởi động lại dịch vụ sql đang bị stop

<figure><img src="/files/A6OGrN4ub6OybInQX7ab" alt=""><figcaption></figcaption></figure>

## Attempted to perform an unauthorized operation <a href="#attempted-to-perform-an-unauthorized-operation-error-when-you-set-up-or-update-sql-server-instances" id="attempted-to-perform-an-unauthorized-operation-error-when-you-set-up-or-update-sql-server-instances"></a>

<figure><img src="/files/L4DQk7u0DrfMYYSXDqaI" alt=""><figcaption></figcaption></figure>

**Nguyên nhân lỗi**: Máy tính cài đặt Windows 10 version 20H2, trình duyệt Microsoft Edge phiên bản 84.x.x => 86.x.x xung đột với SQL Server từ 2012 ->2019 ( Kiểm tra version windows hãy vào **Run** gõ vào **Winver** nhấn Enter)

**Cách khắc phục: Hãy để nguyên SQL đang setup ở màn hình lỗi kia, tiến hành làm theo thử 1 trong 2 hướng sau**

* Cách 1: Mở trình duyệt Microsoft Edge lên,  chọn Setting, chọn About Edge, để check update trình duyệt web này lên version mới nhất, update xong. Quay lại màn hình lỗi SQL kia nhấn Retry để chạy tiếp.
* Cách 2:&#x20;

<pre><code>Thêm quyền Full Control permission cho User Administrators

1. Chạy chương trình Registry Editor. Vào Run gõ regedit nhấn Enter. 
2. Trong trình quản lý Registry Editor: 
Click chuột phải chọn:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge subkey, 
Lựa chọn Permissions.

<strong>3. Trong cửa sổ Permissions mở ra chọn Advanced.
</strong>
<strong>4. Trong phần trên cùng của Advanced Security Settings, Chọn vào Change next to the listed owner.
</strong>
<strong>5. Trong cửa sổ User, Computer, Service Account, or Group window, 
</strong><strong>Hãy nhập tên user đang đăng nhập vào sau đó nhấn Enter để tìm tên nhấn Check Names để kiểm tra đúng tên đăng nhập.
</strong>
6. NhấnOK 2 lần.

7. Trong cửa sổ Permissions, chọn vào Users group, và sau đó chọn Allow Full Control permissions.

8. Nhấn OK để trở lại cửa sổ Registry.

9. Đóng Registry lại, quay lại chỗ setup SQL, nhấn Retry để chạy tiếp.

Nguồn tham khảo: https://learn.microsoft.com/vi-vn/troubleshoot/sql/database-engine/install/windows/error-set-up-update-instances
</code></pre>

## Illegal characters in path ( Error code 0x84B10001

<figure><img src="/files/C344Na2qcmRBgpRs2CVD" alt=""><figcaption></figcaption></figure>

**Cách sửa lỗi:**

Như ảnh bạn vào theo đường dẫn của thư mục .NET FRAMEWORK, click vào file machine.config chọn chuột phải vào file chọn Properties, Tab Sercurity, chọn Add Everyone vào tích Full Control.

Sau đó edit file machine.config = notepad sau đó tìm thẻ \<system.ServiceModel> để xoá hết nội dung trong thẻ đó đi, lưu file lại

Tiến hành khởi động lại máy tính, cài đặt lại SQL

<figure><img src="/files/DMy2RwazowRlteg31ESg" alt=""><figcaption></figcaption></figure>

## XOÁ ĐI SERVICE SQL ĐANG LỖI

Cảnh báo: Cách này chỉ xóa service khỏi danh sách quản lý dịch vụ chứ không xóa các file cài đặt gốc. Chỉ nên dùng cách này nếu phương pháp trên thất bại hoặc bạn biết rõ mình đang làm gì.

1. Mở Command Prompt với quyền Admin:
   * Nhấn phím `Windows`, gõ `cmd`.
   * Nhấp chuột phải vào Command Prompt và chọn Run as administrator.
2. Xác định tên chính xác của Service:
   * Tên hiển thị là `SQL Server (ACMEN)`.
   * Tên service thực tế trong hệ thống thường có dạng `MSSQL$TEN_INSTANCE`. Với trường hợp của bạn, tên service rất có thể là `MSSQL$ACMAN`.
3. Gõ lệnh xóa service: Sử dụng lệnh `sc delete` theo cú pháp sau:

   ```
   sc delete "Tên Service"
   ```

   Áp dụng cho trường hợp của bạn, lệnh sẽ là:

   ```
   sc delete "MSSQL$ACMEN"
   ```
4. Thực thi lệnh: Nhấn Enter. Nếu thành công, bạn sẽ nhận được thông báo `[SC] DeleteService SUCCESS`.

Sau khi thực hiện, hãy khởi động lại máy tính để thay đổi có hiệu lực hoàn toàn.

## SQL Server Database Engine Services Instance Features Component error code: 0x851A001A

Lỗi `0x851A001A` khi cài đặt SQL Server, với mô tả "Wait on the Database Engine recovery handle failed", thường xảy ra do sự không tương thích về kích thước sector của ổ đĩa. Vấn đề này đặc biệt phổ biến trên các hệ điều hành mới như Windows 11 hoặc khi sử dụng các ổ cứng SSD NVMe đời mới.

Nguyên nhân chính là do SQL Server hiện tại hỗ trợ kích thước sector vật lý của ổ đĩa là 512 bytes và 4KB (4096 bytes), trong khi một số ổ đĩa mới có thể báo cáo kích thước sector lớn hơn (ví dụ: 16KB), khiến cho dịch vụ SQL Server không thể khởi động sau khi cài đặt.

Để khắc phục lỗi này, bạn có thể thực hiện theo các bước sau:

#### Cách khắc phục chính: Điều chỉnh Registry để giả lập kích thước sector 4KB

Đây là giải pháp được báo cáo là hiệu quả nhất trong hầu hết các trường hợp.

1. Kiểm tra kích thước sector của ổ đĩa: Mở Command Prompt (CMD) hoặc PowerShell với quyền Administrator và chạy lệnh sau (thay `C:` bằng ký tự ổ đĩa bạn đang cài đặt SQL Server):

   Bash

   ```
   fsutil fsinfo sectorinfo C:
   ```

   Kiểm tra giá trị của `PhysicalBytesPerSectorForAtomicity`. Nếu giá trị này lớn hơn `4096`, bạn đã xác định đúng nguyên nhân.

<figure><img src="/files/o2XCQN2wzpzsBygjxsyE" alt=""><figcaption></figcaption></figure>

1. Thêm khóa Registry: Vẫn trong cửa sổ Command Prompt (hoặc PowerShell) với quyền Administrator, chạy lệnh sau để buộc Windows giả lập kích thước sector là 4KB:

   PowerShell

   ```
   REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f
   ```
2. Khởi động lại máy tính: Sau khi chạy lệnh trên, hãy khởi động lại máy tính để thay đổi có hiệu lực.
3. Cài đặt lại SQL Server: Sau khi máy tính khởi động lại, hãy gỡ bỏ các thành phần đã cài đặt không thành công của SQL Server và tiến hành cài đặt lại từ đầu. Lần này, quá trình cài đặt sẽ thành công.

**LỆNH CMD để sửa lỗi, copy ra notepad, save as file .cmd để chạy**

```
@echo off
setlocal

:: =================================================================
:: TEP LENH TU DONG KIEM TRA VA SUA LOI 0x851A001A KHI CAI SQL SERVER
:: PHIEN BAN 2.0 - ON DINH HON, KHONG TU DONG THOAT
:: Phai chay bang quyen Administrator!
:: =================================================================

title Sua loi cai dat SQL Server v2.0 - 0x851A001A

echo =================================================================
echo  CONG CU KIEM TRA VA SUA LOI KICH THUOC SECTOR CHO SQL SERVER
echo =================================================================
echo.

:: 1. Kiem tra quyen Administrator
net session >nul 2>&1
if %errorlevel% NEQ 0 (
    echo [LOI] Ban chua chay tep voi quyen Administrator.
    echo.
    echo Vui long dong cua so nay, chuot phai vao tep va chon "Run as administrator".
    goto :end_script
)
echo [OK] Da chay voi quyen Administrator.
echo.
echo Dang kiem tra o dia he thong (%SystemDrive%), vui long doi...
echo.

:: 2. Thuc hien kiem tra kich thuoc sector
set SectorSize=0
for /f "tokens=1,2" %%a in ('fsutil fsinfo sectorinfo %SystemDrive% ^| findstr /I /C:"PhysicalBytesPerSectorForAtomicity"') do (
    set SectorSize=%%b
)

:: 3. Xu ly ket qua
if %SectorSize% EQU 0 (
    echo [LOI] Khong the tu dong xac dinh kich thuoc sector.
    echo Nguyen nhan co the do phien ban Windows cua ban khong phai tieng Anh.
    echo Vui long kiem tra thu cong theo huong dan sau:
    echo   1. Mo CMD (go 'cmd' trong menu Start).
    echo   2. Go lenh: fsutil fsinfo sectorinfo %SystemDrive%
    echo   3. Tim dong co chu "Atomicity" va xem con so ben canh. Neu lon hon 4096 la bi loi.
    goto :end_script
)

if %SectorSize% LE 4096 (
    echo [THONG BAO] Kich thuoc sector cua ban la %SectorSize% bytes.
    echo => Kich thuoc nay HOAN TOAN TUONG THICH voi SQL Server.
    echo.
    echo Ban khong can phai sua loi. Neu van gap su co khi cai dat,
    echo nguyen nhan co the den tu van de khac.
    goto :end_script
)

echo [CANH BAO] Phat hien van de khong tuong thich!
echo -----------------------------------------------------------------
echo - Kich thuoc sector cua o dia la: %SectorSize% bytes.
echo - Kich thuoc nay LON HON muc 4096 bytes ma SQL Server ho tro.
echo - Day la nguyen nhan chinh gay ra loi 0x851A001A.
echo.
echo => De khac phuc, cong cu se them mot khoa vao Registry de
echo    Windows gia lap kich thuoc sector la 4KB.
echo.

:confirm
choice /C YN /M "Ban co muon thuc hien sua loi khong (Y/N)?"
if errorlevel 2 goto :no_fix
if errorlevel 1 goto :apply_fix

:apply_fix
echo.
echo Dang thuc hien sua loi...
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f >nul
if %errorlevel% EQU 0 (
    echo.
    echo [THANH CONG] Da sua loi thanh cong!
    echo.
    echo ** BUOC QUAN TRONG TIEP THEO: **
    echo ** Ban PHAI KHOI DONG LAI MAY TINH de thay doi co hieu luc. **
    echo.
    echo Sau khi khoi dong lai, hay tien hanh cai dat SQL Server.
) else (
    echo [THAT BAI] Khong the sua loi. Ma loi: %errorlevel%.
)
goto :end_script

:no_fix
echo.
echo Ban da chon khong sua loi. Khong co thay doi nao duoc thuc hien.
goto :end_script

:end_script
echo.
echo -----------------------------------------------------------------
pause
```

## The target principal name is incorrect. Cannot generate SSPI context

<figure><img src="/files/UuKG8uUmz4SY1uIuiFrG" alt=""><figcaption></figcaption></figure>

#### Nguyên nhân chính

* Tên máy tính không hợp lệ: Đây là nguyên nhân phổ biến nhất. Tên máy tính của bạn có thể chứa các ký tự đặc biệt, dấu gạch dưới (`_`), hoặc quá dài, gây ra sự cố trong quá trình đăng ký định danh trên mạng (gọi là SPN - Service Principal Name).
* Sự cố với Domain Controller: Nếu máy tính của bạn đang trong một mạng có Domain, có thể đã xảy ra lỗi giao tiếp hoặc xác thực giữa máy tính của bạn và máy chủ quản lý Domain.

Cách khắc phục:

* Kiểm tra tên máy tính có chứa ký tự đặc biệt thì sửa lại, ví dụ như sau có chữ đ của Tiếng Việt

<figure><img src="/files/pUj0TN7KPZPeKVqTWfW8" alt=""><figcaption></figcaption></figure>

* Đổi tên máy tính sao cho không chứa ký tự đặc biệt, gỡ sạch SQL cũ bị lỗi, khởi động lại máy tính và cài đặt lại SQL SERVER là được.

## A network-related or instance-specific error occurred..." (error: 40 - Could not open a connection to SQL Server)

<figure><img src="/files/PSLpLOMG4lh3NQnT5EO0" alt=""><figcaption></figcaption></figure>

#### **Nguyên nhân chính**

Nguyên nhân phổ biến nhất là tài khoản dịch vụ (Service Account) của SQL Server không có đủ quyền để truy cập vào thư mục cài đặt của chính nó. Khi cài đặt, SQL Server sẽ tạo ra một tài khoản ảo như `NT SERVICE\MSSQLSERVER` để chạy dịch vụ Database Engine. Nếu tài khoản này không có quyền đọc/ghi trên thư mục dữ liệu, nó sẽ không thể khởi động được.

#### **Cách khắc phục**

Bạn hãy thử cách sau đây, đây là cách hiệu quả nhất cho lỗi này:

**Phương pháp 1: Cấp quyền truy cập cho thư mục cài đặt (Khuyên dùng)**

1. Hủy (Cancel) cửa sổ cài đặt hiện tại và để trình cài đặt tự gỡ bỏ những gì đã cài. Nếu không được, bạn hãy gỡ SQL Server 2012 khỏi Control Panel.
2. Chạy lại file cài đặt SQL Server với quyền quản trị viên (Run as administrator).
3. Thực hiện các bước cài đặt như bình thường. Khi đến bước "Installation Progress" (như trong ảnh lỗi của bạn) và nó bắt đầu chạy, hãy làm nhanh các thao tác sau:
   * Mở File Explorer và tìm đến thư mục cài đặt SQL Server. Mặc định là: `C:\Program Files\Microsoft SQL Server`.
   * Nhấp chuột phải vào thư mục MSSQL11.MSSQLSERVER (số 11 có thể thay đổi tùy phiên bản), chọn Properties.
   * Chuyển qua tab Security và chọn Edit.
   * Trong cửa sổ mới, chọn Add....
   * Gõ `NT SERVICE\MSSQLSERVER` vào ô "Enter the object names to select" rồi nhấn Check Names. Tên tài khoản sẽ được gạch chân nếu đúng. Sau đó nhấn OK.
   * Chọn tài khoản `MSSQLSERVER` bạn vừa thêm vào danh sách, và ở khung bên dưới, tick vào ô Full control.
   * Nhấn OK hai lần để đóng tất cả các cửa sổ.
4. Quay lại trình cài đặt. Nếu bạn làm kịp lúc, trình cài đặt sẽ vượt qua được bước lỗi và hoàn tất. Nếu không, hãy nhấn "Retry" trên thông báo lỗi.

**Phương pháp 2: Thay đổi tài khoản dịch vụ khi cài đặt ( khuyên dùng)**

Nếu cách trên không hiệu quả, bạn có thể thử lại từ đầu và thay đổi tài khoản dịch vụ:

1. Gỡ cài đặt SQL Server 2012 cũ.
2. Chạy lại file cài đặt với quyền quản trị viên.
3. Ở bước "Server Configuration", trong tab "Service Accounts":

<figure><img src="/files/is0V1SEzHncUpvUjFFu3" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/FZjiCnmnEyWSYgIX3rkN" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/JyTRfEnlan3PIYSHTzrx" alt=""><figcaption></figcaption></figure>

* Tìm đến dòng có "Service Name" là "SQL Server Database Engine".
* Ở cột "Account Name", bấm vào và chọn "NT AUTHORITY\SYSTEM".
* Hoàn tất các bước cài đặt còn lại.

## Cài đặt SQL 2019 báo lỗi: Exception code: 0xc0000005

Nguyên nhân:

`Exception code: 0xc0000005` trong `ntdll.dll` đối với SQL Server 2019 (phiên bản RTM `15.0.2000.5`) thường xảy ra do vấn đề tương thích Sector Size của ổ cứng (đặc biệt là ổ SSD NVMe đời mới hoặc trên Windows 11).

Phiên bản SQL Server hiện tại của bạn là bản gốc (RTM) chưa được vá lỗi này, nên nó bị crash khi cố gắng đọc/ghi vào ổ cứng có Sector Size lớn (4KB native)

Mở CMD bằng quyền Administrator, chạy lệnh CMD sau đó khởi động lại máy tính, tiến hành cài đặt lại SQL SERVER 2019

```sql
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f
```

hoặc tải file sau để chạy luôn:

{% file src="/files/ahUqWp1QO75l1fcL2E4t" %}

## FCB::Open failed: Could not open file d:\dbs\sh\s19s... Starting up database 'master'

**Nguyên nhân:**

Trong thư mục `DATA` của bạn hiện tại đang bị thiếu 4 file quan trọng:

* `model.mdf`
* `modellog.ldf`
* `MSDBData.mdf`
* `MSDBLog.ldf`

#### Hướng dẫn sửa lỗi (Copy file từ Template)

Bạn hãy làm chính xác theo các bước sau, hệ thống sẽ chạy lại được:

**Bước 1: Truy cập thư mục Template (Nơi chứa file dự phòng)**

Mở File Explorer và đi đến đường dẫn sau (Copy và dán vào thanh địa chỉ): `C:\Program Files\Microsoft SQL Server\MSSQL15.DTECH_EXPRESS\MSSQL\Binn\Templates`

Tại đây, bạn hãy COPY 4 file sau:

1. `model.mdf`
2. `modellog.ldf`
3. `msdbdata.mdf`
4. `msdblog.ldf`

**Bước 2: Dán vào thư mục DATA (Nơi đang bị thiếu)**

Đi đến đường dẫn chứa dữ liệu chính (Dựa theo log của bạn): `C:\Program Files\Microsoft SQL Server\MSSQL15.DTECH_EXPRESS\MSSQL\DATA`

*Lưu ý: Nếu không vào được đường dẫn trên, hãy vào `C:\Program Files\Microsoft SQL Server\MSSQL15.DTECH_EXPRESS\MSSQL\` và tìm folder `DATA`.*

Tại đây, hãy PASTE (Dán) 4 file bạn vừa copy ở Bước 1 vào.

**Bước 3: Khởi động lại dịch vụ**

1. Mở Services (gõ `services.msc` vào Run).
2. Tìm SQL Server (DTECH\_EXPRESS).
3. Chuột phải chọn Start.

## SSL Security error

**Nguyên nhân:**

SQL server version cũ 2012 chỉ hỗ trợ TLS 1.0, cài đặt windows đời mới bỏ giao thức TLS 1.0 đi dẫn tới máy trạm không kết nối được tới máy chủ dùng SQL SERVER 2012

**Cách khắc phục:**

Tải phần mềm IIS Cryto GUI này về để bật TLS 1.0 cả máy chủ và máy trạm lên [tại đây](https://www.nartac.com/Products/IISCrypto/Download)

Bật xong phải khởi động lại máy mới có tác dụng.

<figure><img src="/files/thDnLBXkoBTJZEPVYtkZ" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kythuat.dtechvn.com/sql-server/sua-loi-cai-dat-sql.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
