當前位置:首頁 » 編程語言 » sqlserver線程

sqlserver線程

發布時間: 2022-06-09 02:02:13

java連接創建20個線程,每個線程每秒都訪問sqlserver庫的3張表,jsp頁面動態顯示數據

對頁面程序,20個線程,可以認為是20個瀏覽器請求同時訪問。

頁面用ajax

而後台,是一般的jdbc,就可以

String url="jdbc:sqlserver://localhost:1433:tempdb";
String userName="sa";
String password=""; //密碼自己根據情況而定

try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

Connection conn = DriverManager.getConnection(url,userName,password);
Statement stmt = conn.createStatement();//只讀的結果集
ResultSet rs = stmt.executeQuery("select * from student");
while(rs.next()){
ut.println(rs.getString("1"));
}
rs.close();
conn.close();

}catch(ClassNotFoundException e){
System.err.print("fail to load driver");
}catch(Exception e){
e.printStackTrace();
}

❷ mssql,mysql,sqlserver三者有何不同

mssql=sqlserver,都是Microsoft® SQL Server™,只是不同的簡稱。
mysql,是由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。
兩者的區別是MSSQL是企業級資料庫,mysql是輕量級資料庫(當然也可以作為企業級資料庫,但需要購買很多其他的服務)

❸ 如何使用 Editbin 調整 SQL Server 線程的堆棧大小

Microsoft 的二進制文件編輯器 (Editbin.exe) 可用於調整 SQL Server 大內存配置允許在具有 2 GB 或更多的物理 RAM 的計算機上的 SQL Server 線程的堆棧大小。

一個 32 位操作系統為 Windows NT 可以解決最大為 4 GB 的虛擬內存。Windows NT 可將此虛擬地址范圍劃分為 2 GB 用於用戶進程和系統的另一個 2 GB。因此,SQL Server 可以解決最大 2 GB 的虛擬內存 (或物理內存),如果 2 GB 或更大系統上存在。

如果您正試圖最大化的 2 GB 或更多的物理內存的系統上分配給 SQL Server 內存數量,您可能會發現您將不能將按照您預期的那樣為高 SQLServer 內存參數設置。例如對於設置 900,000 頁 (大約 1.8 GB) 的參數可能會導致下面的任一 SQL Server 的內存:

· 啟動伺服器時出現錯誤:initdata: 對緩沖區頁的子分配失敗 (x 所請求的位元組為單位)。

-或者-

· 試圖將用戶連接時出現錯誤: 沒有足夠的內存用於 pss 分配。

這兩個錯誤寫入Windows NT 事件日誌和 $ SQL Server 錯誤日誌。

在最初的分析上似乎合理您應該能夠將 1.8 GB 分配給 SQL Server 並將 Windows NT 系統的其餘部分。但是,默認,SQL Server 由創建的每個線程由 Windows NT 指派 1 MB 的虛擬堆棧空間,這不佔 SQL Server 內存配置參數值中的虛擬內存。如果 SQL Server 被配置為使用多個幾百個輔助線程,大量的虛擬內存可以專用於線程的堆棧空間並且因此不能用於伺服器啟動時或在必要時用戶連接的動態內存分配。例如對於 200 工作線程將佔用大約 200 MB 的虛擬內存的單獨的堆棧空間。實際,SQL
Server 線程是永遠不會使用保留的虛擬內存地址的大容量。但是,WindowsNT 它們時默認情況下分配 SQL Server 創建線程。

在情況下其中有 2 GB 或更多的物理內存在的系統上,您正試圖為 SQL Server (以及 SQL Server 數據高速緩存的) 盡可能使用盡可能多的內存就可以減少默認線程虛擬堆棧大小要有效地使用這些內存地址。在中增加分配給 SQL Server,(通過增加 SQL Server 內存配置參數,或通過只能夠將多個用戶連接不內存不足的情況下) 的內存數量,可以看到降低堆棧大小的效果。

若要修改 SQL Server 線程堆棧大小,您必須使用 Microsoft Visual c + + 開發環境中包含Microsoft 二進制文件編輯器 (Editbin.exe)。從 Windows NT 的命令提示符處運行的 Editbin 實用程序用於修改對象文件、 可執行文件的文件和動態鏈接庫 (dll)。Editbin 實用程序的詳細信息,請參閱 Microsoft Visual c + + 文檔。

若要減小專用於 SQL Server 所使用的每個 Windows NT 線程虛擬地址范圍,運行以下命令:

EDITBIN /STACK:reservesqlservr.exe

此選項設置堆棧的大小以位元組為單位),保留參數中的每個線程的虛擬內存指定總堆棧分配的位置。Editbin舍入到最接近的 4 個位元組指定的值。 請注意可選提交參數時,不需要調整的 SQL Server 的線程的堆棧大小。例如對於要為 SQL Server 的線程的堆棧大小設置成 64k,可使用以下命令在該 Mssql\Binn 目錄:

EDITBIN /STACK:65536sqlservr.exe

請務必考慮對 Sqlservr.exe 運行此命令之前採取以下幾點:

· 除非您的系統具有 2GB 或更多的物理內存,請不要運行此命令。

· 運行此命令之前,您應該進行Sqlservr.exe 文件的備份副本。

· 您應該全面測試您的應用程序和 SQLServer 與它交互,觀察到生產環境中 Sqlservr.exe 在更改之前的任何的性能差異。

請記住,線程的堆棧空間量取決於應用程序中。如果您指定一個太低,為您的應用程序的堆棧大小,SQL Server 將報告堆棧溢出錯誤。 遺憾的是,沒有估計所需的堆棧空間的簡便方法。因此,建議不 16k 下面設置的堆棧空間。測試表明該金額應適合大多數應用程序。

若要檢查當前線程堆棧大小,使用可以 Dumpbin.exe 實用程序 (包括 Microsoft Visual c + + 中) 看一看"的堆棧保留大小"值。

下面的命令 (在Windows NT 命令提示符下運行) 提供了一個示例:

DUMPBIN /headerssqlservr.exe

此命令顯示了可選 HEADER VALUES 標題下的"大小的堆棧保留"為 Sqlservr.exe 6.5 服務Pack1 (英特爾) 的以下:

堆棧保留的100000 大小

值顯示以十六進制格式 (100,000= 1,048,576 位元組,或 1 MB)。

❹ C#多線程操作SqlServer

1、你必須開啟代理服務sql server agent
2、在企業管理器里,打開「管理—>sqlserver代理—>作業」,新增作業,新建「步驟」,在步驟里填入你要轉移的SQL語句到「命令」框里。然後新建「調度」。
3、啟動作業。
OK,自己試一下。
另外,如果你轉移的數據量比較大,還可以通過建立SQLSERVER數據復制的包來解決,然後在「步驟」里調用這個包就可以。SQLSERVER的數據復制技術,是多線程的,處理起來比較快。很久沒試了具體內容有點忘了。

如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!

vaela

❺ sqlserver資料庫操作近千萬數據,會對伺服器比如對內存,線程,句柄數,CPU等造成哪些影響

當然是操作數據越多對伺服器各種的影響越大。這當然看是什麼操作(查詢、編輯等)

❻ sqlserver 線程鎖死怎麼辦

T1、T2表示兩個任務;R1和R2表示兩個資源;由資源指向任務的箭頭(如R1->T1,R2->T2)表示該資源被改任務所持有;由任務指向資源的箭頭(如T1->S2,T2->S1)表示該任務正在請求對應目標資源;
其滿足上面死鎖的四個必要條件:
(1).互斥:資源S1和S2不能被共享,同一時間只能由一個任務使用;
(2).請求與保持條件:T1持有S1的同時,請求S2;T2持有S2的同時請求S1;
(3).非剝奪條件:T1無法從T2上剝奪S2,T2也無法從T1上剝奪S1;
(4).循環等待條件:上圖中的箭頭構成環路,存在循環等待。

❼ 如何實現多線程查詢Sqlserver庫

如何實現多線程查詢Sqlserver庫
在後台創建多個線程,訪問你對應的數據然後放在一個指定的對象裡面。 JSP上非同步不斷的發送請求向你存放數據的對象,返回數據後,放在JSP頁面裡面。

❽ 求助:多線程操作SQLSERVER資料庫的問題

色如果火熱火熱

❾ SQLSERVER到底能識別多少個邏輯CPU

如果操作系統能識別80個邏輯CPU表明:

4顆10核2.00處理器 ,每核心雙線程(4*10*2=80),也就是80個邏輯處理器(每個線程代表一個邏輯CPU)

或者

4顆10核2.00處理器 ,每核心一個線程,但是使用了超線程技術之後變為每核心雙線程(4*10*2=80),

也就是80個邏輯處理器(每個線程代表一個邏輯CPU)

LZ說:在sql server 2005中資料庫屬性處理器一項中只能識別cpu0-cpu59,並且群集切換後,另一台接管資源節點只能識別到20顆邏輯處理器。

只能識別到60個邏輯CPU

❿ 求幫助,sqlserver 2005 多線程批量插入資料庫數據丟失

一次性插入大量數據,只能使用循環,
如:游標,while 循環語句
下面介紹While 循環插入數據,
SQL 代碼如下:
IF OBJECT_ID('dbo.Nums') IS NOT NULL
DROP TABLE dbo.Nums;
GO
CREATE TABLE dbo.Nums(n INT NOT NULL PRIMARY KEY);
DECLARE @max AS INT, @rc AS INT;
SET @max = 5000000;
SET @rc = 1;
INSERT INTO Nums VALUES(1);
WHILE @rc * 2 <= @max
BEGIN
INSERT INTO dbo.Nums SELECT n + @rc FROM dbo.Nums;
SET @rc = @rc * 2;
END
INSERT INTO dbo.Nums SELECT n + @rc FROM dbo.Nums WHERE n + @rc <= @max;
--以上函數取自Inside SQL Server 2005: T-SQL Query一書。
INSERT dbo.Sample SELECT n, RAND(CAST(NEWID() AS BINARY(16))) FROM Nums

熱點內容
UE4源碼編譯要多久 發布:2025-02-08 07:52:50 瀏覽:230
java架構師做什麼 發布:2025-02-08 07:38:32 瀏覽:774
java解碼器 發布:2025-02-08 07:25:35 瀏覽:297
p4忘記密碼了如何刷機 發布:2025-02-08 07:25:25 瀏覽:307
java分隔 發布:2025-02-08 07:15:02 瀏覽:813
源碼乘法豎式 發布:2025-02-08 07:05:48 瀏覽:137
天天酷跑腳本腳本精靈 發布:2025-02-08 07:05:15 瀏覽:346
ios資料庫遷移 發布:2025-02-08 07:00:16 瀏覽:852
安卓sdl是什麼 發布:2025-02-08 07:00:05 瀏覽:909
離線腳本怎麼寫 發布:2025-02-08 06:59:22 瀏覽:833