Sybase資料庫

Sybase資料庫

1984年,Mark B. Hiffman和Robert Epstern創建了Sybase公司,並在1987年推出了Sybase資料庫產品。SYBASE主要有三種版本,一是UNIX作業系統下運行的版本,二是Novell Netware環境下運行的版本,三是Windows NT環境下運行的版本。對UNIX作業系統目前廣泛套用的為SYBASE 10 及SYBASE 11 for SCO UNIX。

基本介紹

  • 中文名:Sybase資料庫
  • 時間:1984年
  • 創始人:Mark B. Hiffman
  • 特點:容納多個主機的環境
特點,組成,修復,

特點

基於客戶/伺服器體系結構的資料庫
一般的關係資料庫都是基於主/從式的模型的。在主/從式的結構中,所有的套用都運行在一台機器上。用戶只是通過終端發命令或簡單地查看套用運行的結果。
而在客戶/伺服器結構中,套用被分在了多台機器上運行。一台機器是另一個系統的客戶,或是另外一些機器的伺服器。這些機器通過區域網路或廣域網聯接起來。
客戶/伺服器模型的好處是:
● 它支持共享資源且在多台設備間平衡負載
● 允許容納多個主機的環境,充分利用了企業已有的各種系統
真正開放的資料庫
由於採用了客戶/伺服器結構,套用被分在了多台機器上運行。更進一步,運行在客戶端的套用不必是Sybase公司的產品。對於一般的關係資料庫,為了讓其它語言編寫的套用能夠訪問資料庫,提供了預編譯。Sybase資料庫,不只是簡單地提供了預編譯,而且公開了應用程式接口DB-LIB,鼓勵第三方編寫DB-LIB接口。由於開放的客戶DB-LIB允許在不同的平台使用完全相同的調用,因而使得訪問DB-LIB的應用程式很容易從一個平台向另一個平台移植。
一種高性能的資料庫
Sybase真正吸引人的地方還是它的高性能。體現在以下幾方面:
● 可程式資料庫
通過提供存儲過程,創建了一個可程式資料庫。存儲過程允許用戶編寫自己的資料庫子例程。這些子例程是經過預編譯的,因此不必為每次調用都進行編譯、最佳化、生成查詢規劃,因而查詢速度要快得多。
事件驅動的觸發器
觸發器是一種特殊的存儲過程。通過觸發器可以啟動另一個存儲過程,從而確保資料庫的完整性。
● 多線索化
Sybase資料庫的體系結構的另一個創新之處就是多線索化。一般的資料庫都依靠作業系統來管理與資料庫的連線。當有多個用戶連線時,系統的性能會大幅度下降。Sybase資料庫不讓作業系統來管理進程,把與資料庫的連線當作自己的一部分來管理。此外,Sybase的資料庫引擎還代替作業系統來管理一部分硬體資源,如連線埠、記憶體、硬碟,繞過了作業系統這一環節,提高了性能。

組成

Sybase資料庫主要由三部分組成:
(1) 進行資料庫管理和維護的一個在線上的關係資料庫管理系統Sybase SQL Server;
Sybase SQL Server是個可程式的資料庫管理系統,它是整個Sybase產品的核心軟體,起著數據管理、高速緩衝管理、事務管理的作用。
(2) 支持資料庫套用系統的建立與開發的一組前端工具Sybase SQL Toolset;
ISQL是與SQL Server進行互動的一種SQL句法分析器。ISQL接收用戶發出的SQL語言,將其傳送給SQL Server,並將結果以形式化的方式顯示在用戶的標準輸出上。
DWB是數據工作檯,是Sybase SQL Toolset的一個主要組成部分,它的作用在於使用戶能夠設定和管理SQL Server上的資料庫,並且為用戶提供一種對資料庫的信息執行添加、更新和檢索等操作的簡便方法。在DWB中能完成ISQL的所有功能,且由於DWB是基於視窗和選單的,因此操作比ISQL簡單,是一種方便實用的資料庫管理工具。
APT是Sybase客戶軟體部分的主要產品之一,也是從事實際套用開發的主要環境。APT工作檯是用於建立應用程式的工具集,可以創建從非常簡單到非常複雜的應用程式,它主要用於開發基於表格(Form)的套用。其用戶界面採用視窗和選單驅動方式,通過一系列的選擇完成表格(Form)、選單和處理的開發。
(3) 可把異構環境下其它廠商的套用軟體和任何類型的數據連線在一起的接口Sybase Open Client/Open Server。
通過Open Client的DB-LIB庫,應用程式可以訪問SQL Server。而通過Open Server的SERVER-LIB,應用程式可以訪問其它的資料庫管理系統

修復

資料庫所用的設備正常,而庫demodb的狀態為suspect。
(1)以sa註冊
isql -u sa -P
1>
(2)修改server屬性,置系統表為允許修改該狀態。
1>sp_configure "allow updates",1
2>go
3>recofigure with override
4>go
(3)Sybase資料庫修復,修改資料庫的狀態,置資料庫狀態為server啟動時不檢測。
1>update master.sysdatabases set status = -32768
2>where name = "demodb"
3>go
(4)重啟server。
(5)修改資料庫的狀態,置資料庫狀態為正常。
1>update master.sysdatabases set status = 0
2>where name ="demodb"
3>go
(6)修改server屬性,置系統表為不允許修改狀態。
1>sp_configure "allowupdates",0
2>go
3>reconfigure with override
4>go
(7)再次重啟server。
至此,如果資料庫能夠正常,則恢復完畢,至此,Sybase資料庫修復完成。
以上步驟中,也可以用單用戶模式啟動server,命令為startserver -m,而不必修改server的"allow updates"屬性。SYBASE 11及以上版本的server只需重啟,不需要執行reconfigure with override。如果上述方法仍不能恢複數據庫,則只能使用dbcc命令刪除該資料庫,然後重新建立。

相關詞條

熱門詞條

聯絡我們