SYBASE 多臨時庫使用

2021-08-15 07:43:47 字數 1523 閱讀 9531

在解決江西資料庫問題時,發現

tempdb 

資料庫資源爭用比較嚴重,鎖比較多,根據餘頭兒和趙哥的建議,採用多臨時庫緩解

tempdb

的壓力,對np的

sym、

tjfx 

應用和第三方公司帳號

jdhb

單獨繫結臨時庫。

臨時資料庫的作用:

臨時庫是一種全伺服器範圍的資源

,主要用於處理排序、建立工作表、重新格式以及儲存使用者建立的臨時表和索引。

臨時庫相關的效能問題:

1、大量使用臨時資料庫中的物件導致從資料快取記憶體中清除其它頁。

2、因鎖定系統表而導致經常短暫阻止使用者查詢建立臨時表。

3、臨時資料庫排序緩慢

,且資料庫查詢效能較不穩定。

4、臨時資料庫經常處於填滿狀態

,導致向使用者發出錯誤訊息使用者必須等到空間可用時才能重新提交查詢。

如何建立臨時庫:

use master

go

-- 建立臨時庫

tempdb01 裝置

disk init  

name="dev_tempdb01_dat01",

physname="/home/sybase/installed/data6000/dev_tempdb01_dat01.dat",

size="5g"

go

disk init

name="dev_tempdb01_log01",

physname="/home/sybase/installed/data6000/dev_tempdb01_log01.dat",

size="2g"

go

create temporary database tempdb01

on dev_tempdb01_dat01="5g"

log on dev_tempdb01_log01="2g"

go

如何繫結臨時庫:

1、根據登陸名繫結到臨時庫

-- 繫結使用者

sp_tempdb "bind", "lg", "sa", "db", "tempdb02"

2、根據應用程式繫結臨時庫

-- 繫結統計分析

sp_tempdb "bind","ap","np-fy-tjfx","db","tempdb01"

go

選擇臨時庫規則:

adaptive server 

根據以下規則為會話選擇臨時資料庫:

1、如果登入名已存在繫結

,則使用該繫結。

2、如果已指定應用程式名且其已存在繫結

,則使用該繫結。

3、 如果 

adaptive server 

未發現繫結

,則使用迴圈方案從預設組中分配乙個臨時資料庫。

如何檢視繫結:

sp_tempdb who,"tempdb01"

sp_tempdb who,"tempdb02"

SYBASE 多臨時庫使用

在解決江西資料庫問題時,發現tempdb 資料庫資源爭用比較嚴重,鎖比較多,根據餘頭兒和趙哥的建議,採用多臨時庫緩解tempdb的壓力,對np的sym tjfx 應用和第三方公司帳號jdhb單獨繫結臨時庫。臨時資料庫的作用 臨時庫是一種全伺服器範圍的資源,主要用於處理排序 建立工作表 重新格式以及儲...

Sybase資料庫使用總結

1 對xml型別的字段作為查詢條件 xmlvalue欄位中儲存的內容 1.0 com.ciat.mobile.hkmobileegov zakzak 查詢的儲存過程 alter procedure dba xml select condition begin select xmlid,xmlvalu...

sybase 資料庫使用筆記

最近乙個專案用的是sybase的資料庫。那叫乙個蛋疼。搞傷的了。先是亂碼問題 這是個老生常談的問題。網上說連線字串後面加個charset cp850就行了。我試了下不行。然後又說什麼cp936。然後我一查我們的sybase伺服器還沒cp936.然後又是安裝。安裝倒是挺容易的。在命令列裡面進行syba...