簡體   English   中英

如何指定我的應用程序應使用跟蹤標志參數啟動 SQL Server LocalDb?

[英]How can I specify that my app should start SQL Server LocalDb with a trace flag parameter?

我的應用程序使用 LocalDb 實例來存儲它的數據。 我注意到 LocalDb 分配標識的方式有一個怪癖(在此處詳細解釋),我想避免這種情況。 鏈接的答案解釋了這可以通過設置 SQL Server 跟蹤標志來完成,並解釋了如何為“全脂”SQL Server 執行此操作。

是否可以在 LocalDb 上設置跟蹤標志? 當我的應用程序按需啟動它時,這可以通過連接字符串完成嗎?

我有一個類似的問題,相信我有一個解決方法......

啟動 Regedit 並找到您的 localdb 注冊表項。 對我來說這是

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12E.LOCALDB\MSSQLServer\

在此鍵中創建另一個名為Parameters 的鍵。

在 Parameters 鍵中創建一個名為SQLArg0的字符串 (REG_SZ) 並將其值設置為-T272

通過在命令提示符下運行SQLLOCALDB.EXE來停止 LocalDB 進程,將stop作為參數和實例名稱傳入。 例如:

C:\> sqllocaldb stop mssqllocaldb

然后通過連接到其上的數據庫使 LocalDB 自動啟動。

運行查詢DBCC TRACESTATUS() ,您應該會看到跟蹤標志 272 存在。 例如:

C:\>sqlcmd -S (LocalDB)\MSSQLLocalDB -Q "DBCC TRACESTATUS();"

為了測試這一點,我一直在使用 VS2015 服務器資源管理器來探索數據庫。 在任務管理器 ( sqlservr.exe ) 中殺死 LocalDB 進程,在 VS2015 中連接到數據庫並手動添加新行導致我的自動增量值跳躍 1000。添加上述注冊表黑客后,手動終止 LocalDB 進程不會不會導致下一個生成的標識值跳過。

HTH

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM