




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、達(dá)夢(mèng)數(shù)據(jù)庫(kù)PROGRAMMER MANUAL程序員手冊(cè)I目錄 PAGE * ROMAN V目 錄 HYPERLINK l _bookmark0 第 1 章 概述1 HYPERLINK l _bookmark1 功能特性1 HYPERLINK l _bookmark2 通用性1 HYPERLINK l _bookmark3 高性能2 HYPERLINK l _bookmark4 高安全性4 HYPERLINK l _bookmark5 高可靠、高可用性5 HYPERLINK l _bookmark6 易用性6 HYPERLINK l _bookmark7 對(duì)存儲(chǔ)模塊的支持9 HYPERLINK
2、l _bookmark8 對(duì) Web 應(yīng)用的支持9 HYPERLINK l _bookmark9 主要技術(shù)指標(biāo)9 HYPERLINK l _bookmark10 第 2 章 DPI 編程指南11 HYPERLINK l _bookmark11 2.1 基礎(chǔ)簡(jiǎn)介11 HYPERLINK l _bookmark12 2.2 進(jìn)階14 HYPERLINK l _bookmark13 函數(shù)原型21 HYPERLINK l _bookmark14 編程參考70 HYPERLINK l _bookmark15 數(shù)據(jù)捕獲100 HYPERLINK l _bookmark16 數(shù)據(jù)類型101 HYPERLIN
3、K l _bookmark17 相關(guān)方法101 HYPERLINK l _bookmark18 數(shù)據(jù)信息搜集表103 HYPERLINK l _bookmark19 舉例說(shuō)明104 HYPERLINK l _bookmark20 第 3 章 DMODBC 編程指南107 HYPERLINK l _bookmark21 數(shù)據(jù)類型107 HYPERLINK l _bookmark22 支持的函數(shù)108 HYPERLINK l _bookmark23 連接到數(shù)據(jù)源109 HYPERLINK l _bookmark24 獲取驅(qū)動(dòng)程序和數(shù)據(jù)源信息109 HYPERLINK l _bookmark25 設(shè)
4、置或者獲取驅(qū)動(dòng)程序?qū)傩?10 HYPERLINK l _bookmark26 設(shè)置或者獲取描述符字段110 HYPERLINK l _bookmark27 準(zhǔn)備SQL 語(yǔ)句110 HYPERLINK l _bookmark28 提交SQL 請(qǐng)求110 HYPERLINK l _bookmark29 檢索結(jié)果集及其相關(guān)信息110 HYPERLINK l _bookmark30 取得數(shù)據(jù)源系統(tǒng)表的信息111 HYPERLINK l _bookmark31 終止語(yǔ)句執(zhí)行111 HYPERLINK l _bookmark32 中斷連接112 HYPERLINK l _bookmark33 建立 ODB
5、C 連接112 HYPERLINK l _bookmark34 申請(qǐng)環(huán)境與連接句柄112 HYPERLINK l _bookmark35 如何與數(shù)據(jù)源進(jìn)行連接113 HYPERLINK l _bookmark36 設(shè)置與取得連接的屬性115 HYPERLINK l _bookmark37 斷開與數(shù)據(jù)源之間的連接115 HYPERLINK l _bookmark38 ODBC 應(yīng)用程序編程的基本步驟117 HYPERLINK l _bookmark39 Windows 上創(chuàng)建 ODBC 數(shù)據(jù)源117 HYPERLINK l _bookmark40 Linux 上創(chuàng)建 ODBC 數(shù)據(jù)源121 HY
6、PERLINK l _bookmark41 ODBC 應(yīng)用程序編寫的基本步驟123 HYPERLINK l _bookmark42 使用存儲(chǔ)過(guò)程和函數(shù)126 HYPERLINK l _bookmark43 存儲(chǔ)過(guò)程與函數(shù)字典信息的獲取126 HYPERLINK l _bookmark44 存儲(chǔ)模塊的創(chuàng)建127 HYPERLINK l _bookmark45 存儲(chǔ)模塊的調(diào)用127 HYPERLINK l _bookmark46 第 4 章 DM JDBC 編程指南130 HYPERLINK l _bookmark47 JDBC 介紹130 HYPERLINK l _bookmark48 JDBC
7、 基本示例130 HYPERLINK l _bookmark49 DM JDBC 特性138 HYPERLINK l _bookmark50 DM JDBC 擴(kuò)展139 HYPERLINK l _bookmark51 數(shù)據(jù)類型擴(kuò)展139 HYPERLINK l _bookmark52 讀寫分離集群下的錯(cuò)誤信息140 HYPERLINK l _bookmark53 建立 JDBC 連接140 HYPERLINK l _bookmark54 通過(guò) DriverManager 建立連接141 HYPERLINK l _bookmark55 創(chuàng)建JDBC 數(shù)據(jù)源142 HYPERLINK l _boo
8、kmark56 數(shù)據(jù)源與連接池143 HYPERLINK l _bookmark57 DM 擴(kuò)展連接屬性的使用143 HYPERLINK l _bookmark58 Statement/PreparedStatement/CallableStatement146 HYPERLINK l _bookmark59 Statement146 HYPERLINK l _bookmark60 PreparedStatement148 HYPERLINK l _bookmark61 CallableStatement150 HYPERLINK l _bookmark62 ResultSet152 HYPE
9、RLINK l _bookmark63 流與大對(duì)象155 HYPERLINK l _bookmark64 Stream 使用155 HYPERLINK l _bookmark65 LOB 對(duì)象使用157 HYPERLINK l _bookmark66 4.9 元數(shù)據(jù)158 HYPERLINK l _bookmark67 ResultSetMetaData158 HYPERLINK l _bookmark68 DatabaseMetaData158 HYPERLINK l _bookmark69 ParameterMetaData159 HYPERLINK l _bookmark70 RowSe
10、t160 HYPERLINK l _bookmark71 CachedRowSet160 HYPERLINK l _bookmark72 JdbcRowSet161 HYPERLINK l _bookmark73 分布式事務(wù)支持162 HYPERLINK l _bookmark74 XADataSource162 HYPERLINK l _bookmark75 XAConnection162 HYPERLINK l _bookmark76 XAResource163 HYPERLINK l _bookmark77 4.11.4 Xid164 HYPERLINK l _bookmark78 4.
11、11.5 實(shí)例解析164 HYPERLINK l _bookmark79 第 5 章 .NET Data Provider 編程指南166 HYPERLINK l _bookmark80 數(shù)據(jù)類型166 HYPERLINK l _bookmark81 提供的對(duì)象和接口167 HYPERLINK l _bookmark82 DmConnection 對(duì)象167 HYPERLINK l _bookmark83 DmCommand 對(duì)象168 HYPERLINK l _bookmark84 DmDataAdapter 對(duì)象169 HYPERLINK l _bookmark85 DmDataReade
12、r 對(duì)象169 HYPERLINK l _bookmark86 DmParameter 對(duì)象170 HYPERLINK l _bookmark87 DmParameterCollection 對(duì)象171 HYPERLINK l _bookmark88 DmTransaction 對(duì)象171 HYPERLINK l _bookmark89 DmCommandBuilder 對(duì)象171 HYPERLINK l _bookmark90 DmConnectionStringBuilder 對(duì)象172 HYPERLINK l _bookmark91 DmClob 對(duì)象172 HYPERLINK l _b
13、ookmark92 DmBlob 對(duì)象172 HYPERLINK l _bookmark93 注冊(cè).NET 驅(qū)動(dòng)173 HYPERLINK l _bookmark94 Nhibernate Dm 方言包174 HYPERLINK l _bookmark95 5.5.NET Data Provider 基本示例174 HYPERLINK l _bookmark96 5.6 對(duì)象使用176 HYPERLINK l _bookmark97 5.6.1 連接176 HYPERLINK l _bookmark98 查詢與結(jié)果集176 HYPERLINK l _bookmark99 插入、更新、刪除176
14、 HYPERLINK l _bookmark100 5.6.4 大對(duì)象178 HYPERLINK l _bookmark101 5.6.5 自增列180 HYPERLINK l _bookmark102 5.6.6 存儲(chǔ)過(guò)程與函數(shù)180 HYPERLINK l _bookmark103 第 6 章 DM PHP 編程指南183 HYPERLINK l _bookmark104 DM PHP 介紹183 HYPERLINK l _bookmark105 基本示例184 HYPERLINK l _bookmark106 DM PHP 模塊加載187 HYPERLINK l _bookmark107
15、 編程接口189 HYPERLINK l _bookmark108 第 7 章 DM DCI 編程指南199 HYPERLINK l _bookmark109 DM DCI 介紹199 HYPERLINK l _bookmark110 數(shù)據(jù)類型199 HYPERLINK l _bookmark111 參考函數(shù)200 HYPERLINK l _bookmark112 關(guān)系型接口函數(shù)200 HYPERLINK l _bookmark113 使用 DM DCI 編程基本步驟242 HYPERLINK l _bookmark114 第 8 章 DM FLDR 編程指南249 HYPERLINK l _
16、bookmark115 DM FLDR 接口介紹249 HYPERLINK l _bookmark116 DM FLDR 接口說(shuō)明249 HYPERLINK l _bookmark117 返回值說(shuō)明249 HYPERLINK l _bookmark118 接口說(shuō)明249 HYPERLINK l _bookmark119 編程實(shí)例258 HYPERLINK l _bookmark120 第 9 章 DM FLDR JNI 編程指南260 HYPERLINK l _bookmark121 DM FLDR JNI 接口介紹260 HYPERLINK l _bookmark122 接口說(shuō)明260 HY
17、PERLINK l _bookmark123 DM FLDR JNI 編程實(shí)例264 HYPERLINK l _bookmark124 第 10 章 Logmnr 接口使用說(shuō)明270 HYPERLINK l _bookmark125 JNI 接口270 HYPERLINK l _bookmark126 接口說(shuō)明270 HYPERLINK l _bookmark128 編程實(shí)例275 HYPERLINK l _bookmark129 10.2 C 接口277 HYPERLINK l _bookmark130 接口說(shuō)明277 HYPERLINK l _bookmark131 編程實(shí)例283 HYP
18、ERLINK l _bookmark132 附錄 1 錯(cuò)誤碼匯編285 HYPERLINK l _bookmark133 DM 服務(wù)器錯(cuò)誤碼匯編285 HYPERLINK l _bookmark134 DPI 錯(cuò)誤碼匯編285 HYPERLINK l _bookmark135 OCI 錯(cuò)誤碼匯編288 HYPERLINK l _bookmark136 OCCI 錯(cuò)誤碼匯編292附錄 2 DM 技術(shù)支持294第 1 章 概述 PAGE 9 第 1 章 概述DM8 是達(dá)夢(mèng)數(shù)據(jù)庫(kù)有限公司推出的新一代高性能數(shù)據(jù)庫(kù)產(chǎn)品。它具有開放的、可擴(kuò)展的體系結(jié)構(gòu),易于使用的事務(wù)處理系統(tǒng),以及低廉的維護(hù)成本,是達(dá)夢(mèng)公
19、司完全自主開發(fā)的產(chǎn)品。DM8 以 RDBMS 為核心,以 SQL 為標(biāo)準(zhǔn),是一個(gè)能跨越多種軟硬件平臺(tái)、具有大型數(shù)據(jù)綜合管理能力的、高效穩(wěn)定的通用數(shù)據(jù)庫(kù)管理系統(tǒng)。數(shù)據(jù)庫(kù)訪問是數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中非常重要的組成部分。DM 作為一個(gè)通用數(shù)據(jù)庫(kù)管理系統(tǒng),提供了多種數(shù)據(jù)庫(kù)訪問接口,包括 ODBC、JDBC、DPI、OLEDB 以及嵌入方式等。本書詳細(xì)介紹了 DM 的各種訪問接口,相應(yīng)開發(fā)環(huán)境的配置,以及一些開發(fā)用例。本書的主要讀者是從事過(guò)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā),并具有 SQL 使用基礎(chǔ)的程序員。開發(fā)一個(gè)應(yīng)用系統(tǒng),需要對(duì)其使用的數(shù)據(jù)庫(kù)管理系統(tǒng)所具有的功能、性能、特性有較深入的了解。DM 作為一個(gè)通用的數(shù)據(jù)庫(kù)管理系
20、統(tǒng),具有非常豐富的功能和特色。功能特性DM 除了具備一般 DBMS 所應(yīng)具有的基本功能外,還特別具有以下特性:通用性;高性能;高安全性;高可靠、高可用性;易用性;海量數(shù)據(jù)存儲(chǔ)和管理;全文索引;對(duì)存儲(chǔ)模塊的支持;對(duì) WEB 應(yīng)用的支持。以下對(duì)這些特性做具體介紹。通用性DM 是大型通用數(shù)據(jù)庫(kù)管理系統(tǒng),其通用性主要表現(xiàn)在以下四個(gè)方面:SQL 及接口的開發(fā)符合國(guó)際通用標(biāo)準(zhǔn)符合 SQL92/SQL99、ODBC、JDBC、OLE DB、PHP、.NET Provider 等國(guó)際標(biāo)準(zhǔn)或行業(yè)標(biāo)準(zhǔn),提供所有數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)接口;支持 SQL92 標(biāo)準(zhǔn)的所有數(shù)據(jù)類型;SQL92 入門級(jí)標(biāo)準(zhǔn)符合率達(dá)到 100%,過(guò)渡級(jí)
21、也達(dá)到 100%;提供了符合 ODBC 3.0 標(biāo)準(zhǔn)的 ODBC 接口驅(qū)動(dòng)程序、符合 JDBC 3.0 標(biāo)準(zhǔn)的 JDBC 接口驅(qū)動(dòng)程序和符合 OLE DB 2.7 標(biāo)準(zhǔn)的 OLE DB 接口驅(qū)動(dòng)程序。支持 eclipse、JBuilder、Visual Studio、Delphi、C+Builder、PowerBuilder 等各種流行的數(shù)據(jù)庫(kù)應(yīng)用開發(fā)工具。此外,為了提高數(shù)據(jù)庫(kù)的通用性,DM 還增加了一些其他數(shù)據(jù)庫(kù)的數(shù)據(jù)類型、函數(shù)和語(yǔ)法等特性,與國(guó)外數(shù)據(jù)庫(kù)管理系統(tǒng)(如 Oracle、SQL Server 等)高度兼容,如:同時(shí)支持自增列和序列。而且從數(shù)據(jù)庫(kù)市場(chǎng)現(xiàn)狀和技術(shù)人員開發(fā)習(xí)慣的角度出發(fā),
22、注重在功能擴(kuò)展、函數(shù)配備、調(diào)用接口及調(diào)用方式等方面盡量與國(guó)際主流的各類數(shù)據(jù)庫(kù)產(chǎn)品接軌,提高應(yīng)用系統(tǒng)的可移植性和可重用性,降低開發(fā)廠商移植和升級(jí)的工作難度和強(qiáng)度??缙脚_(tái)支持DM 服務(wù)器內(nèi)核采用一套源代碼實(shí)現(xiàn)了對(duì)不同軟件( WINDOWS/LINUX/UNIX/AIX/SOLARIS 等)、硬件(X64/X86/SPARC/POWER/TITAM)平臺(tái)的支持,各種平臺(tái)上的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)完全一致。與此同時(shí),各平臺(tái)的消息通信結(jié)構(gòu)也完全保持一致,使得達(dá)夢(mèng)數(shù)據(jù)庫(kù)的各種組件均可以跨不同的軟、硬件平臺(tái)與數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行交互。DM 支持 WINDOWS 2000/XP/2003、2.4 及 2.4 以上內(nèi)核的 L
23、INUX(Redhat、Debian、Suse、紅旗、中標(biāo)等)、麒麟操作系統(tǒng)(Kylin)、AIX、SOLARIS 等國(guó)內(nèi)外常用操作系統(tǒng)。DM 的管理工具、應(yīng)用開發(fā)工具集使用 Java 編寫,從而可以跨平臺(tái)工作,即同一程序無(wú)需重新編譯,將其執(zhí)行碼拷貝到任一種操作系統(tǒng)平臺(tái)上都能直接運(yùn)行。這也保證了它們?cè)诟鞣N操作系統(tǒng)平臺(tái)上都有統(tǒng)一的界面風(fēng)格。DM 產(chǎn)品采用一致的人機(jī)交互界面,既有易于操作使用的圖形化界面工具,也有豐富的命令行控制臺(tái)工具。支持對(duì)稱多處理機(jī)系統(tǒng)由于 DM 核心系統(tǒng)的多線程機(jī)制利用了操作系統(tǒng)的線程調(diào)度,因此系統(tǒng)的工作線程在單 CPU 和多 CPU 機(jī)器上都能很好地并行操作。對(duì)于多 CPU
24、 的系統(tǒng),只要采用的操作系統(tǒng)支持多 CPU 機(jī)制,DM 就能很好地實(shí)現(xiàn)多 CPU 協(xié)同工作。對(duì) UNICODE 的支持目前 DM 系統(tǒng)支持了 Unicode 字符集和其他多種字符集。用戶可以在安裝 DM 系統(tǒng)時(shí), 指定服務(wù)器端使用 UTF8 字符集。此時(shí)在客戶端,用戶能夠以各種字符集存儲(chǔ)文本,并使用系統(tǒng)提供的接口設(shè)置客戶端使用的字符集,缺省使用客戶端操作系統(tǒng)缺省的字符集??蛻舳撕头?wù)器端的字符集由用戶指定后,所有字符集都可以透明地使用,系統(tǒng)負(fù)責(zé)不同字符集之間的自動(dòng)轉(zhuǎn)換。對(duì) Unicode 的支持使 DM 系統(tǒng)適應(yīng)國(guó)際化的需要,增強(qiáng)了 DM 的通用性。高性能DM 主要通過(guò)以下機(jī)制實(shí)現(xiàn)了系統(tǒng)的高性
25、能:可配置的多工作線程處理功能DM 允許用戶配置工作線程的數(shù)目。工作線程是整個(gè)系統(tǒng)所公用的資源,不專門為某個(gè)特定的連接服務(wù)。如果某個(gè)數(shù)據(jù)庫(kù)操作由于無(wú)法取得相應(yīng)的資源(如鎖)而不能繼續(xù),將暫停當(dāng)前的數(shù)據(jù)庫(kù)事務(wù),相應(yīng)的工作線程會(huì)立即執(zhí)行其它的數(shù)據(jù)庫(kù)請(qǐng)求服務(wù)。所以,在系統(tǒng)硬件及操作系統(tǒng)性能夠滿足要求的情況下,連接數(shù)和任務(wù)請(qǐng)求數(shù)的增加對(duì) DM 性能的影響是線性的。DM 自動(dòng)協(xié)調(diào)工作線程對(duì)內(nèi)存、數(shù)據(jù)頁(yè)等物理資源的共享。高效的并發(fā)控制機(jī)制DM 提供了數(shù)據(jù)庫(kù)的行級(jí)和表級(jí)的資源封鎖機(jī)制,大大提高了事務(wù)并發(fā)訪問的數(shù)目。DM 通過(guò)以下幾點(diǎn)確保并發(fā)控制的高效:用 HASH 表管理實(shí)現(xiàn)鎖管理,能夠在系統(tǒng)成千上萬(wàn)的鎖中
26、迅速地找到所需的鎖;利用回滾段保存記錄修改前的數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)的讀一致性。另外,在 DM 中,當(dāng)對(duì)數(shù)據(jù)頁(yè)進(jìn)行操作時(shí),系統(tǒng)會(huì)自動(dòng)對(duì)數(shù)據(jù)頁(yè)采用合適的封鎖機(jī)制。同時(shí),DM 也提供了函數(shù)供用戶自行定義鎖定類型,以增強(qiáng)系統(tǒng)并發(fā)度,提高系統(tǒng)效率。有效的查詢優(yōu)化策略DM 采用有效的基于代價(jià)的查詢優(yōu)化策略,其查詢優(yōu)化子系統(tǒng)能計(jì)算最優(yōu)的查詢路徑以保證查詢的執(zhí)行效率。查詢優(yōu)化主要通過(guò)以下三個(gè)步驟進(jìn)行:SQL 轉(zhuǎn)換:DM 首先對(duì)用戶輸入的查詢語(yǔ)句進(jìn)行一系列復(fù)雜的轉(zhuǎn)換,其結(jié)果為一個(gè)語(yǔ)義上等價(jià)但處理起來(lái)更為有效的 SQL 語(yǔ)句;統(tǒng)計(jì)信息與代價(jià)估計(jì):DM 為數(shù)據(jù)庫(kù)對(duì)象保存了一系列的統(tǒng)計(jì)信息,代價(jià)估計(jì)模塊基于系統(tǒng)的 I/O、
27、CPU 和內(nèi)存等資源情況和數(shù)據(jù)庫(kù)對(duì)象的統(tǒng)計(jì)信息估算每個(gè)計(jì)劃的代價(jià);執(zhí)行計(jì)劃選擇:執(zhí)行計(jì)劃描述了查詢語(yǔ)句的每一個(gè)處理步驟,如以什么算法執(zhí)行連接,是否使用索引等。優(yōu)化器考慮可能的執(zhí)行計(jì)劃,并選擇代價(jià)最小的交付執(zhí)行。另外,用戶可通過(guò) DM 的客戶端工具查看查詢語(yǔ)句的執(zhí)行計(jì)劃。盡可能少的網(wǎng)絡(luò)通訊量DM 對(duì)消息發(fā)送條件進(jìn)行仔細(xì)判斷,避免和減少無(wú)用的網(wǎng)絡(luò)交互,提高了消息處理的效率,減輕了服務(wù)器的負(fù)擔(dān),降低了等待時(shí)間,加速了工作線程的運(yùn)轉(zhuǎn),提高了性能。對(duì)于密集型聯(lián)機(jī)事務(wù)處理效果尤佳。加強(qiáng)的緩沖機(jī)制DM 為了提高系統(tǒng)運(yùn)行效率,對(duì)于頻繁操作的對(duì)象進(jìn)行了必要的緩存處理,實(shí)現(xiàn)了數(shù)據(jù)字典高速緩沖,實(shí)現(xiàn)了語(yǔ)法分析樹的可
28、重用,優(yōu)化了存儲(chǔ)過(guò)程和觸發(fā)器的運(yùn)行。與此同時(shí),DM 還新增了動(dòng)態(tài)緩沖區(qū)機(jī)制。當(dāng)數(shù)據(jù)庫(kù)服務(wù)器發(fā)現(xiàn)因?yàn)榫彌_區(qū)不足而產(chǎn)生頻繁的緩沖區(qū)頁(yè)面淘汰時(shí),如果整個(gè)系統(tǒng)還有可用內(nèi)存,則 DM 會(huì)自動(dòng)擴(kuò)展緩沖區(qū),減少淘汰幾率,顯著提升系統(tǒng)性能。針對(duì) 64 位計(jì)算的優(yōu)化策略和技術(shù)DM 在代碼級(jí)全面支持 64 位系統(tǒng),能夠支持主流 64 位處理機(jī)和操作系統(tǒng),并融入了很多針對(duì) 64 位計(jì)算的優(yōu)化策略和技術(shù)。DM 不僅能夠運(yùn)行在 64 位系統(tǒng)上,還能很好地利用64 位系統(tǒng)的資源(例如能充分地利用更大容量的內(nèi)存),在 64 位系統(tǒng)上表現(xiàn)出良好的性能。查詢計(jì)劃重用DM 在首次執(zhí)行 SQL 語(yǔ)句過(guò)程中會(huì)在內(nèi)存中創(chuàng)建一個(gè)計(jì)劃緩沖
29、池,緩存執(zhí)行過(guò)的 SQL 語(yǔ)句、存儲(chǔ)過(guò)程以及觸發(fā)器的執(zhí)行計(jì)劃。對(duì)于后續(xù)接收到的 SQL 命令,系統(tǒng)自動(dòng)采用字符串全字匹配的方式,在計(jì)劃池中查找對(duì)應(yīng)的計(jì)劃,如果有則直接使用,否則對(duì)該語(yǔ)句進(jìn)行分析,創(chuàng)建執(zhí)行計(jì)劃,并將執(zhí)行計(jì)劃放入計(jì)劃緩沖池中。通過(guò)這種方式,系統(tǒng)可以極大地節(jié)省對(duì)語(yǔ)句進(jìn)行分析和創(chuàng)建執(zhí)行計(jì)劃的時(shí)間,從而提升系統(tǒng)性能。查詢結(jié)果集緩存DM 還支持查詢結(jié)果的緩存功能。查詢語(yǔ)句第一次執(zhí)行后,系統(tǒng)可以把結(jié)果保存下來(lái), 如果后面有同樣的語(yǔ)句,且所訪問的數(shù)據(jù)沒有發(fā)生變化,則不需要進(jìn)行計(jì)算,直接把先前保存的結(jié)果返回給客戶即可。在很多以查詢?yōu)橹鞯南到y(tǒng)中,采用該功能性能可以得到成倍地提升。數(shù)據(jù)壓縮DM 新增
30、了數(shù)據(jù)壓縮的功能,用戶可以對(duì)整個(gè)表進(jìn)行壓縮,也可以選擇對(duì)部分字段進(jìn)行壓縮。對(duì)于 I/O 密集型的系統(tǒng)來(lái)說(shuō),通過(guò)采取適當(dāng)?shù)臄?shù)據(jù)壓縮的策略,可以減少系統(tǒng)的 I/O量,在 I/O 子系統(tǒng)是整個(gè)系統(tǒng)的瓶頸時(shí),采取該措施可以有效提升系統(tǒng)性能。函數(shù)索引DM 擴(kuò)充了索引的建立方法,允許在表達(dá)式上面建立索引。表達(dá)式既可以出現(xiàn)在函數(shù)的參數(shù)中(如 ABS(ID)),也可以是列的操作(如 C1+C2),DM 把這類索引稱為函數(shù)索引。函數(shù)索引的引入為 DBA 提供了一種新的優(yōu)化手段。例如,執(zhí)行如下的語(yǔ)句:SELECT * FROM t WHERE UPPER(name) = CBDG;在以往的版本中,這條語(yǔ)句的執(zhí)行只
31、能是全表掃描。如果建立如下索引:CREATE INDEX i_t_fbi_name ON t(UPPER(name);則可以通過(guò)函數(shù)所以 i_t_fbi_name,進(jìn)行等值掃描,性能獲得大幅提升。高安全性只具備自主訪問控制安全機(jī)制的數(shù)據(jù)庫(kù)遠(yuǎn)不能滿足一些對(duì)安全具有高要求的系統(tǒng)的需要。為了保證系統(tǒng)的安全性,DM 采用基于角色與權(quán)限的管理方法來(lái)實(shí)現(xiàn)基本安全功能,并根據(jù)三權(quán)分立的安全機(jī)制,將審計(jì)和數(shù)據(jù)庫(kù)管理分別處理,同時(shí)增加了強(qiáng)制訪問控制功能, 另外,還實(shí)現(xiàn)了包括通訊加密、存儲(chǔ)加密以及資源限制等輔助安全功能,使得達(dá)夢(mèng)數(shù)據(jù)庫(kù)安全級(jí)別達(dá)到 B1 級(jí)。完全自主知識(shí)產(chǎn)權(quán)達(dá)夢(mèng)數(shù)據(jù)庫(kù)是具有完全自主知識(shí)產(chǎn)權(quán)的國(guó)產(chǎn)大
32、型數(shù)據(jù)庫(kù)管理系統(tǒng)。在產(chǎn)品開發(fā)過(guò)程中, 達(dá)夢(mèng)公司始終堅(jiān)持自主開發(fā)的原則,致力于保衛(wèi)國(guó)家信息安全,推進(jìn)國(guó)民經(jīng)濟(jì)信息化建設(shè), 擁有產(chǎn)品的全部源代碼和完全的自主版權(quán)。這一方面杜絕了繼承開源系統(tǒng)導(dǎo)致的版權(quán)糾紛, 同時(shí)也從根本上保證了系統(tǒng)的安全性,并有利于與其它應(yīng)用系統(tǒng)集成,可以根據(jù)具體需求定制和提供及時(shí)有效的服務(wù)。三權(quán)分立的安全機(jī)制DM 在安全管理方面采用了三權(quán)分立的安全管理體制,把系統(tǒng)管理員分為數(shù)據(jù)庫(kù)管理員DBA、數(shù)據(jù)庫(kù)安全管理員 SSO、數(shù)據(jù)庫(kù)審計(jì)員 AUDITOR 三類。DBA 負(fù)責(zé)自主訪問控制及系統(tǒng)維護(hù)與管理方面的工作,SSO 負(fù)責(zé)強(qiáng)制訪問控制,AUDITOR 負(fù)責(zé)系統(tǒng)的審計(jì)。這種管理體制真正做
33、到三權(quán)分立,各行其責(zé),相互制約,更好地實(shí)現(xiàn)了數(shù)據(jù)的保密性、完整性和可用性。身份驗(yàn)證DM 能夠根據(jù)用戶在系統(tǒng)中的登錄名和密碼確定該用戶是否具有登錄的權(quán)限和其在系統(tǒng)中的系統(tǒng)級(jí)角色,確定該用戶能夠做什么和不能夠做什么。DM 提供兩種身份驗(yàn)證模式來(lái)保護(hù)對(duì)服務(wù)器訪問的安全,即數(shù)據(jù)庫(kù)身份驗(yàn)證模式和外部身份驗(yàn)證模式。數(shù)據(jù)庫(kù)身份驗(yàn)證模式需要利用數(shù)據(jù)庫(kù)口令,外部身份驗(yàn)證模式支持基于操作系統(tǒng)(OS)的身份驗(yàn)證。資源限制資源限制是控制用戶對(duì) DM 服務(wù)器系統(tǒng)資源的使用情況,以盡可能減少人為的安全隱患。通過(guò)資源限制可以提供一個(gè)規(guī)劃數(shù)據(jù)庫(kù)系統(tǒng)資源使用的接口,可以人為地規(guī)劃數(shù)據(jù)庫(kù)資源的分配。這樣做對(duì)于惡意地?fù)屨假Y源的訪問
34、可以起到有效的遏制,保證普通數(shù)據(jù)庫(kù)應(yīng)用的正常進(jìn)行,同時(shí)資源限制還起到保證身份驗(yàn)證可靠性的作用。自主訪問控制DM 系統(tǒng)根據(jù)用戶的權(quán)限執(zhí)行自主訪問控制。用戶權(quán)限是指用戶在數(shù)據(jù)對(duì)象上被允許執(zhí)行的操作。規(guī)定用戶權(quán)限要考慮三個(gè)因素:用戶、數(shù)據(jù)對(duì)象和操作,即什么用戶在哪些數(shù)據(jù)對(duì)象上可執(zhí)行什么操作。所有的用戶權(quán)限都要記錄在系統(tǒng)表(數(shù)據(jù)字典)中,對(duì)用戶存取權(quán)限的定義稱為授權(quán),當(dāng)用戶提出操作請(qǐng)求時(shí),DM 根據(jù)授權(quán)情況進(jìn)行檢查,以決定是執(zhí)行操作還是拒絕執(zhí)行,從而保證用戶能夠存取他有權(quán)存取的數(shù)據(jù),不能存取他無(wú)權(quán)存取的數(shù)據(jù)?;跇?biāo)記的強(qiáng)制訪問控制DM 利用策略和標(biāo)記來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的強(qiáng)制訪問機(jī)制。強(qiáng)制訪問控制主要是針對(duì)用
35、戶和元組,用戶操作元組時(shí),不僅要滿足自主訪問控制的權(quán)限要求,還要滿足用戶和元組之間標(biāo)記的相容性。這樣,就避免了出現(xiàn)管理權(quán)限全部由數(shù)據(jù)庫(kù)管理員一人負(fù)責(zé)的局面,同時(shí)也相應(yīng)地增強(qiáng)了系統(tǒng)的安全性。數(shù)據(jù)庫(kù)審計(jì)審計(jì)機(jī)制是 DM 數(shù)據(jù)庫(kù)管理系統(tǒng)安全管理的重要組成部分之一。DM 具有一個(gè)靈活的審計(jì)子系統(tǒng),可以通過(guò)它來(lái)記錄系統(tǒng)級(jí)事件、個(gè)別用戶的行為以及對(duì)數(shù)據(jù)庫(kù)對(duì)象的訪問。通過(guò)查看審計(jì)信息,數(shù)據(jù)庫(kù)審計(jì)員可以知道用戶訪問的形式以及試圖對(duì)該系統(tǒng)進(jìn)行的操作。一旦出現(xiàn)問題,數(shù)據(jù)庫(kù)審計(jì)員可分析審計(jì)信息,跟蹤審計(jì)事件,查出原因。通信加密DM 提供兩種通信方式,即不加密、可選算法的加密通信。選擇何種通信方式以服務(wù)器端為準(zhǔn),通過(guò)
36、設(shè)置服務(wù)器端配置文件中相應(yīng)選項(xiàng)來(lái)指定,客戶端以服務(wù)器采用的通信方式與其進(jìn)行通信。存儲(chǔ)加密某些信息具有保密要求,實(shí)現(xiàn)存儲(chǔ)加密的重要性不言而喻。DM 實(shí)現(xiàn)了對(duì)存儲(chǔ)數(shù)據(jù)的加密,另外,還提供了內(nèi)置的數(shù)據(jù)加/解密函數(shù),為用戶的隱私數(shù)據(jù)提供更加可靠的保護(hù)??腕w重用DM 內(nèi)置的客體重用機(jī)制使數(shù)據(jù)庫(kù)管理系統(tǒng)能夠清掃被重分配的系統(tǒng)資源,以保證數(shù)據(jù)信息不會(huì)因?yàn)橘Y源的動(dòng)態(tài)分配而泄露給未授權(quán)的用戶。高可靠、高可用性任何一個(gè)系統(tǒng)都存在發(fā)生各種意外故障的可能性。DM 的高可靠、高可用性可以避免或降低系統(tǒng)的意外故障對(duì)用戶帶來(lái)的損失,主要包括以下幾個(gè)方面的功能:數(shù)據(jù)守護(hù)DM 數(shù)據(jù)守護(hù)(Data Watch)是一種集成化的高可
37、用、高性能數(shù)據(jù)庫(kù)解決方案,是數(shù)據(jù)庫(kù)異地容災(zāi)的首選方案。通過(guò)部署 DM 數(shù)據(jù)守護(hù),可以在硬件故障(如磁盤損壞)、自然災(zāi)害(地震、火災(zāi))等極端情況下,避免數(shù)據(jù)損壞、丟失,保障數(shù)據(jù)安全,并且可以快速恢復(fù)數(shù)據(jù)庫(kù)服務(wù),滿足用戶不間斷提供數(shù)據(jù)庫(kù)服務(wù)的要求。DM 數(shù)據(jù)守護(hù)提供多種解決方案,可以配置成實(shí)時(shí)主備、MPP 主備、或讀寫分離集群, 滿足用戶關(guān)于系統(tǒng)可用性、數(shù)據(jù)安全性、性能等方面的綜合需求。共享存儲(chǔ)集群DM 共享存儲(chǔ)數(shù)據(jù)庫(kù)集群(DM Data Shared Cluster,簡(jiǎn)稱 DMDSC),允許多個(gè)數(shù)據(jù)庫(kù)實(shí)例同時(shí)訪問、操作同一數(shù)據(jù)庫(kù),具有高可用、高性能、負(fù)載均衡等特性。DMRAC 支持故障自動(dòng)切換和
38、故障自動(dòng)重加入,某一個(gè)數(shù)據(jù)庫(kù)實(shí)例故障后,不會(huì)導(dǎo)致數(shù)據(jù)庫(kù)服務(wù)無(wú)法提供。高級(jí)復(fù)制達(dá)夢(mèng)數(shù)據(jù)復(fù)制(DATA REPLICATION)是一個(gè)分擔(dān)系統(tǒng)訪問壓力、加快異地訪問響應(yīng)速度、提高數(shù)據(jù)可靠性的解決方案。將一個(gè)服務(wù)器實(shí)例上的數(shù)據(jù)變更復(fù)制到另外的服務(wù)器實(shí)例??梢杂糜诮鉀Q大、中型應(yīng)用中出現(xiàn)的因來(lái)自不同地域、不同部門、不同類型的數(shù)據(jù)訪問請(qǐng)求導(dǎo)致數(shù)據(jù)庫(kù)服務(wù)器超負(fù)荷運(yùn)行、網(wǎng)絡(luò)阻塞、遠(yuǎn)程用戶的數(shù)據(jù)響應(yīng)遲緩的問題?;?DM 高級(jí)復(fù)制技術(shù)可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的異地快速備份、實(shí)時(shí)快速同步功能;可以根據(jù)實(shí)際應(yīng)用需要,搭建一對(duì)多復(fù)制、多對(duì)一復(fù)制、級(jí)聯(lián)復(fù)制、對(duì)稱復(fù)制、循環(huán)復(fù)制等復(fù)雜的邏輯復(fù)制環(huán)境。故障恢復(fù)措施數(shù)據(jù)庫(kù)的備份與還原是
39、系統(tǒng)容災(zāi)的重要方法。備份意味著把重要的數(shù)據(jù)復(fù)制到安全的存儲(chǔ)介質(zhì)上,還原則意味著在必要的時(shí)候再把以前備份的數(shù)據(jù)復(fù)制到最初的位置,以保證用戶可以訪問這樣的數(shù)據(jù)。DM 數(shù)據(jù)庫(kù)管理系統(tǒng)支持的備份方式包括物理備份,邏輯備份和 B 樹備份,其中 B 樹備份是介于物理備份和邏輯備份的一種形態(tài)。物理備份分為數(shù)據(jù)庫(kù)級(jí)的備份和用戶表空間級(jí)的備份;B 樹備份分為數(shù)據(jù)庫(kù)級(jí)的備份和用戶表級(jí)的備份。為了提高備份恢復(fù)的安全性,減少備份文件占用磁盤空間的大小,系統(tǒng)支持對(duì)備份數(shù)據(jù)加密和壓縮。易用性為了讓用戶更加容易掌握達(dá)夢(mèng)數(shù)據(jù)庫(kù),DM 提供了大量功能特性來(lái)簡(jiǎn)化系統(tǒng)的使用、管理和維護(hù),具體表現(xiàn)在:動(dòng)態(tài)緩沖區(qū)DM 提供了動(dòng)態(tài)緩沖區(qū)
40、管理機(jī)制,可以更加有效地利用系統(tǒng)內(nèi)存資源,提高服務(wù)器靈活性,減輕系統(tǒng)管理員負(fù)擔(dān),滿足各種應(yīng)用環(huán)境的需求。用戶可以在服務(wù)器啟動(dòng)時(shí)僅分配較少的緩沖數(shù)據(jù)頁(yè),或者直接采用缺省的緩沖區(qū)配置參數(shù),就可以滿足一般的應(yīng)用需求。當(dāng)數(shù)據(jù)庫(kù)服務(wù)器發(fā)現(xiàn)因?yàn)榫彌_區(qū)不足而產(chǎn)生頻繁的緩沖區(qū)頁(yè)面淘汰時(shí),系統(tǒng)會(huì)自動(dòng)擴(kuò)展緩沖區(qū),減少淘汰幾率。當(dāng)系統(tǒng)相對(duì)空閑時(shí),DM 又會(huì)逐步釋放擴(kuò)展的緩沖區(qū)空間,直至最初的規(guī)模。數(shù)據(jù)庫(kù)重演數(shù)據(jù)庫(kù)重演(Database Replay)是指在數(shù)據(jù)庫(kù)系統(tǒng)上捕獲所有負(fù)載(記錄外部客戶端對(duì)服務(wù)器的請(qǐng)求),保存到二進(jìn)制捕獲文件,并傳送到由原始數(shù)據(jù)庫(kù)的備份所恢復(fù)出來(lái)的重演測(cè)試系統(tǒng)上。利用捕獲文件,重演客戶端在系
41、統(tǒng)上所做的所有操作通過(guò)重演可再現(xiàn)該段時(shí)間內(nèi)真實(shí)環(huán)境的負(fù)載及運(yùn)行情況,例如可獲取系統(tǒng)運(yùn)行中的出錯(cuò)的操作。通過(guò)該功能,可以方便地再現(xiàn)用戶負(fù)載,方便用戶定位系統(tǒng)所存在的各種問題。同義詞同義詞(Synonym)實(shí)際就是讓用戶能夠?yàn)閿?shù)據(jù)庫(kù)的一個(gè)模式下的對(duì)象提供別名,它可以替換模式下的表,視圖,序列,函數(shù),存儲(chǔ)過(guò)程等對(duì)象。同義詞通過(guò)掩蓋一個(gè)對(duì)象真實(shí)的名字和擁有者來(lái)提供了一定的安全性,同時(shí)使用同義詞可以簡(jiǎn)化復(fù)雜的 SQL 語(yǔ)句。動(dòng)態(tài)性能視圖DM8 中提供了動(dòng)態(tài)性能視圖功能(一組以 V$開頭的系統(tǒng)表)。通過(guò)動(dòng)態(tài)性能視圖,數(shù)據(jù)庫(kù)管理員可以方便地查看當(dāng)前服務(wù)器諸如鎖的信息、緩存使用情況、IO 狀況等實(shí)時(shí)性能信息,
42、便于找出系統(tǒng)瓶頸,進(jìn)行系統(tǒng)優(yōu)化。Oracle 兼容性目前,大多數(shù)應(yīng)用程序使用的是 Oracle 數(shù)據(jù)庫(kù),用戶或多或少地使用了 Oracle 的一些特殊功能,而這些特殊功能在其他數(shù)據(jù)庫(kù)中都未實(shí)現(xiàn)。為了方便應(yīng)用的移植,DM 實(shí)現(xiàn)了很多 Oracle 獨(dú)特的功能和語(yǔ)法,使得多數(shù) Oracle 的應(yīng)用可以不用修改而直接移植到 DM 上面。Oracle 兼容性方面實(shí)現(xiàn)的功能包括:ROWNUM 表達(dá)式、多列 IN 語(yǔ)法、層次查詢、外連接語(yǔ)法“(+)”、INSTEAD OF 觸發(fā)器、%TYPE 以及記錄類型等。類型別名類型別名實(shí)際上是為數(shù)據(jù)類型提供一個(gè)更加容易記住和理解的名字,方便用戶使用。實(shí)際上,各大數(shù)據(jù)
43、庫(kù)的部分?jǐn)?shù)據(jù)類型名稱也不相同,通過(guò)創(chuàng)建數(shù)據(jù)類型的別名,可以為應(yīng)用系統(tǒng)的移植和數(shù)據(jù)的遷移提供便利。執(zhí)行計(jì)劃為了方便用戶對(duì) SQL 語(yǔ)句性能進(jìn)行分析和調(diào)整,DM 提供了顯示執(zhí)行計(jì)劃的功能。簡(jiǎn)便的數(shù)據(jù)庫(kù)系統(tǒng)安裝和配置統(tǒng)一的界面,熟悉的環(huán)境DM 提供一個(gè)基于 Java 的安裝程序,利用 Java 的跨平臺(tái)性,可以在 Windows、Unix、Linux、Solar is 等平臺(tái)上運(yùn)行,且具有統(tǒng)一界面。這樣,無(wú)論在什么平臺(tái)上,它都可以為管理員提供一個(gè)簡(jiǎn)潔的安裝界面,熟悉、統(tǒng)一的安裝環(huán)境。便捷的安裝向?qū)M 的安裝程序把軟件安裝、數(shù)據(jù)庫(kù)初始化和配置結(jié)合在一起,一氣呵成。配置靈活DM 為常見應(yīng)用做了缺省優(yōu)化
44、配置,用戶可以一路“確認(rèn)”下來(lái),完成安裝,也可自行調(diào)整。在安裝過(guò)程中,安裝程序提供一個(gè)交互界面來(lái)初始化數(shù)據(jù)庫(kù),通過(guò) DM 提供的控制臺(tái)工具,管理員可以方便地根據(jù)實(shí)際應(yīng)用配置 DM 數(shù)據(jù)庫(kù)的各項(xiàng)參數(shù),從而獲得最大的應(yīng)用性能。詳盡的提示信息減少了用戶在安裝過(guò)程中可能出現(xiàn)的問題。通過(guò)降低安裝的復(fù)雜性, 簡(jiǎn)化配置操作,數(shù)據(jù)庫(kù)管理員可提高工作效率,普通技術(shù)人員也很容易成為數(shù)據(jù)庫(kù)系統(tǒng)管理員。集成的系統(tǒng)管理工具 ManagerDM 系統(tǒng)管理工具 Manager 是管理 DM 數(shù)據(jù)庫(kù)系統(tǒng)的圖形化工具,類似于 Oracle 和 MS SQL Server 的 Enterprise Manager。Manager
45、 可以幫助系統(tǒng)管理員更直觀、更方便地管理和維護(hù) DM 數(shù)據(jù)庫(kù),普通用戶也可以通過(guò) Manager 完成對(duì)數(shù)據(jù)庫(kù)對(duì)象的操作。Manager 的管理功能完備,能對(duì) DM 數(shù)據(jù)庫(kù)進(jìn)行較為全面的管理,在不借助其他工具的情況下,能滿足系統(tǒng)管理員和用戶的常規(guī)要求。同時(shí),管理工具 Manager 還集成了安全管理的功能:DM 安全管理員可以通過(guò) Manager 進(jìn)行標(biāo)記管理,同時(shí)它也為 DM 安全管理員提供了管理安全管理員以及安全管理員登錄的操作界面;DM 審計(jì)員可以用 Manager 來(lái)監(jiān)視、記錄、分析用戶對(duì)數(shù)據(jù)庫(kù)的操作,同時(shí)它也為DM 審計(jì)管理員提供了管理審計(jì)員以及審計(jì)員登錄的操作界面。數(shù)據(jù)遷移工具 D
46、TSDM 數(shù)據(jù)遷移工具 DTS 可跨平臺(tái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)和結(jié)構(gòu)互導(dǎo),例如 DM 與 DM 之間、DM 與 ORACLE、MS SQL Server 之間等,也可復(fù)制從 SQL 查詢中獲得的數(shù)據(jù),還可實(shí)現(xiàn)數(shù)據(jù)庫(kù)與文本文件之間的數(shù)據(jù)或者結(jié)構(gòu)互導(dǎo)。為了實(shí)現(xiàn)與 ORACLE、DB2、SQL Server 等多種主流數(shù)據(jù)庫(kù)管理系統(tǒng)的數(shù)據(jù)交換,DM提供跨平臺(tái)的數(shù)據(jù)遷移工具 DTS。它是一個(gè)用純 Java 編寫的基于JDBC/ODBC 的數(shù)據(jù)遷移工具,可跨平臺(tái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)和結(jié)構(gòu)互導(dǎo),也可復(fù)制從 SQL 查詢中獲得的數(shù)據(jù), 還可實(shí)現(xiàn)數(shù)據(jù)庫(kù)與文本文件之間的數(shù)據(jù)或者結(jié)構(gòu)互導(dǎo)。在遷移的過(guò)程中它最大限度地
47、保留了源數(shù)據(jù)的原始信息(包括源數(shù)據(jù)的類型、精度、默認(rèn)值、主鍵和外鍵約束等),還支持遷移過(guò)程中的數(shù)據(jù)類型自動(dòng)轉(zhuǎn)換,關(guān)于轉(zhuǎn)換方面的細(xì)節(jié)問題可由數(shù)據(jù)遷移工具自動(dòng)來(lái)為您解決, 數(shù)據(jù)庫(kù)管理員所要做的僅僅是指定需要進(jìn)行數(shù)據(jù)遷移的兩個(gè)數(shù)據(jù)庫(kù)的連接參數(shù)和所遷移的數(shù)據(jù)。DM 良好的數(shù)據(jù)遷移解決方案為系統(tǒng)移植工作減少了很大一部分工作量,免去系統(tǒng)管理員和開發(fā)人員的后顧之憂,能夠?qū)⒏嗟木ν度氲綉?yīng)用程序的移植上面來(lái)。性能監(jiān)控工具 MonitorDM 性能監(jiān)控工具M(jìn)onitor 是 DM 系統(tǒng)管理員用來(lái)監(jiān)視服務(wù)器的活動(dòng)和性能情況的客戶端工具。它允許系統(tǒng)管理員在本機(jī)或遠(yuǎn)程監(jiān)控服務(wù)器的運(yùn)行狀況,并根據(jù)系統(tǒng)情況對(duì)系統(tǒng)參數(shù)進(jìn)
48、行調(diào)整,以提高系統(tǒng)效率??刂婆_(tái)工具 ConsoleDM 控制臺(tái)(Console)是數(shù)據(jù)庫(kù)管理員(DBA)管理和維護(hù) DM 數(shù)據(jù)庫(kù)的基本工具。通過(guò)使用 DM 控制臺(tái),數(shù)據(jù)庫(kù)管理員可以完成修改服務(wù)器配置參數(shù),啟動(dòng)、停止數(shù)據(jù)庫(kù)服務(wù),脫機(jī)備份與恢復(fù),以及系統(tǒng)信息查看等任務(wù)。命令行控制臺(tái)工具為方便批處理、編程使用,大部分功能都提供命令行方式,如交互式工具 disql、初始化庫(kù)工具 dminit、備份恢復(fù)工具 DMRMAN、快速數(shù)據(jù)裝載工具 dmfldr、導(dǎo)入導(dǎo)出工具dexp/dimp、數(shù)據(jù)庫(kù)重演工具 dreplay 等。海量數(shù)據(jù)存儲(chǔ)和管理DM 的數(shù)據(jù)存儲(chǔ)邏輯上分為 4 個(gè)層次:數(shù)據(jù)庫(kù)實(shí)例、表空間、數(shù)據(jù)文
49、件、數(shù)據(jù)塊。DM 每個(gè)數(shù)據(jù)庫(kù)實(shí)例理論上可包含多達(dá) 65535 個(gè)表空間,每個(gè)表空間可包含 256 個(gè)數(shù)據(jù)文件,每個(gè)數(shù)據(jù)文件由若干數(shù)據(jù)塊構(gòu)成。每個(gè)數(shù)據(jù)文件的大小最大為 32K*4G,因此 DM 最大數(shù)據(jù)存儲(chǔ)容量達(dá)到 TB 級(jí)(實(shí)際上遠(yuǎn)遠(yuǎn)超過(guò)),足以支持大型應(yīng)用。此外,DM 全面支持 64 位計(jì)算,極大地?cái)U(kuò)展了系統(tǒng)支持的數(shù)據(jù)存儲(chǔ)和內(nèi)存容量,這也有利于滿足大型應(yīng)用對(duì)海量數(shù)據(jù)存儲(chǔ)和管理的要求。全文檢索現(xiàn)有的數(shù)據(jù)庫(kù)系統(tǒng),絕大多數(shù)是以結(jié)構(gòu)化數(shù)據(jù)為檢索的主要目標(biāo),因此實(shí)現(xiàn)相對(duì)簡(jiǎn)單。比如數(shù)值檢索,可以建立一張排序好的索引表,這樣速度可以得到提高。但對(duì)于非結(jié)構(gòu)化數(shù)據(jù),即全文數(shù)據(jù),要想實(shí)現(xiàn)檢索,一般都是采用模糊查
50、詢的方式實(shí)現(xiàn)的。這種方式不僅速度慢,而且容易將漢字切分錯(cuò),于是引入了全文索引技術(shù)。全文檢索的主要目的,就是實(shí)現(xiàn)對(duì)大容量的非結(jié)構(gòu)化數(shù)據(jù)的快速查找。DM 實(shí)現(xiàn)了全文檢索功能,它根據(jù)已有詞庫(kù)建立全文索引,然后文本查詢完全在索引上進(jìn)行。詞庫(kù)(包括中、英文等多種語(yǔ)言)由單獨(dú)的軟件進(jìn)行維護(hù)和更新。全文索引為在字符串?dāng)?shù)據(jù)中進(jìn)行復(fù)雜的詞搜索提供了有效支持。全文索引是解決海量數(shù)據(jù)模糊查詢的較好解決辦法。全文檢索支持的檢索類型有:支持英文單詞的檢索(單詞不區(qū)分大小寫)支持全角英文的檢索支持中文詞語(yǔ)的檢索支持常見單個(gè)漢字的檢索支持中文長(zhǎng)句子的檢索支持中英文混合的檢索對(duì)存儲(chǔ)模塊的支持DM 系統(tǒng)允許用戶使用 DM 提供
51、的 DMSQL 過(guò)程語(yǔ)言創(chuàng)建存儲(chǔ)過(guò)程或存儲(chǔ)函數(shù),通常, 我們將存儲(chǔ)過(guò)程和存儲(chǔ)函數(shù)統(tǒng)稱為存儲(chǔ)模塊。存儲(chǔ)模塊運(yùn)行在服務(wù)器端,在功能上相當(dāng)于客戶端的一段 SQL 批處理程序,但是在許多方面有著后者無(wú)法比擬的優(yōu)點(diǎn),它為用戶提供了一種高效率的編程手段,成為現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)的重要特征。存儲(chǔ)模塊在執(zhí)行時(shí)數(shù)據(jù)對(duì)用戶是不可見的,提高了數(shù)據(jù)庫(kù)的安全性;存儲(chǔ)模塊是一種高效訪問數(shù)據(jù)庫(kù)的機(jī)制,使用存儲(chǔ)模塊可減少應(yīng)用對(duì) DM 的調(diào)用, 降低了系統(tǒng)資源浪費(fèi),顯著提高性能,尤其是在網(wǎng)絡(luò)上與 DM 通訊的應(yīng)用更顯著。對(duì) Web 應(yīng)用的支持DM 提供 ODBC 驅(qū)動(dòng)程序和 OLE DB Provider,支持 ADO、.NET 應(yīng)
52、用。支持在 ASP 動(dòng)態(tài)網(wǎng)頁(yè)中訪問 DM。DM 還提供 PHP 接口,支持 PHP 動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)。DM 提供符合 JDBC CompliantTM規(guī)范的第四類純 Java 的 JDBC 驅(qū)動(dòng)程序,可以在以下情形中通過(guò) JDBC 訪問 DM:在 Eclipse、JBuilder 等應(yīng)用開發(fā)工具中;在 JavaBeans 組件、EJB 組件中;在 JSP、Applet、Servlet 等基于 Java 的動(dòng)態(tài)網(wǎng)頁(yè)中。以上特性使得 DM 適應(yīng) Web 應(yīng)用,用戶只用瀏覽器就可以訪問 DM 數(shù)據(jù)庫(kù)。DM 支持 Java 數(shù)據(jù)對(duì)象 JDO(Java Data Objects ),JDO 為對(duì)象持久性提供
53、了第一個(gè)標(biāo)準(zhǔn)化的、完全面向?qū)ο蟮姆椒?。JDO 簡(jiǎn)化了用 Java 語(yǔ)言進(jìn)行數(shù)據(jù)庫(kù)編程的復(fù)雜性,而且對(duì)原始的 Java 源代碼的打亂程度最小。主要技術(shù)指標(biāo)定長(zhǎng)字符串類型(CHAR)字段最大長(zhǎng)度 8188 字節(jié)。變長(zhǎng)字符串類型(VARCHAR)字段最大長(zhǎng)度字節(jié) 8188 字節(jié)。多媒體數(shù)據(jù)類型字段最大長(zhǎng)度(2G-1)字節(jié)。一個(gè)記錄(不含多媒體數(shù)據(jù))最大長(zhǎng)度為頁(yè)大小的一半。一個(gè)記錄中最多字段個(gè)數(shù) 2048。一個(gè)表中最大記錄數(shù) 256 萬(wàn)億條。一個(gè)表中最大數(shù)據(jù)容量 4000PB(受操作系統(tǒng)限制)。表名、列名等標(biāo)識(shí)符的最大長(zhǎng)度 128 字節(jié)。第 1 章 概述 PAGE 10 能定義的最大同時(shí)連接數(shù)為 65
54、000。每個(gè)表空間的最多物理文件數(shù)目 256 個(gè)。物理文件的大小為 32K4G。每個(gè)數(shù)據(jù)庫(kù)最多的表/視圖/索引等對(duì)象的數(shù)目各為 16777216。數(shù)值類型的最高精度為 38 個(gè)有效數(shù)字。在一個(gè)列上允許建立的最多索引數(shù) 1020。表上的最大 UNIQUE 索引數(shù)為 64。第 2 章 DPI 編程指南 PAGE 100 第 2 章 DPI 編程指南基礎(chǔ)簡(jiǎn)介本章主要介紹 DPI 的基本概念以及使用方法,以便于用戶更好地使用 DPI 編寫應(yīng)用程序。DPI 提供了訪問 DM 數(shù)據(jù)庫(kù)的最直接的途徑。DPI 的實(shí)現(xiàn)參考了 Microsoft ODBC 3.0 標(biāo)準(zhǔn),函數(shù)功能以及調(diào)用過(guò)程與 ODBC 3.0
55、十分類似,命名統(tǒng)一采用 dpi 開頭的小寫英文字母方式,各個(gè)單詞之間以下劃線分割(例:ODBC 函數(shù)SQLAllocStmt 對(duì)應(yīng)的 DPI 函數(shù)就是dpi_alloc_stmt),用戶可以參考Microsoft ODBC 3.0程序員參考手冊(cè)(第二卷)之 API 參考部分的函數(shù)說(shuō)明及調(diào)用方法。句柄句柄是用于 DPI 函數(shù)申請(qǐng)和使用資源的變量。達(dá)夢(mèng) DPI 包含以下句柄:句柄說(shuō)明宏定義dhenv環(huán)境句柄DSQL_HANDLE_ENVdhcon連接句柄DSQL_HANDLE_DBCdhstmt語(yǔ)句句柄DSQL_HANDLE_STMTdhdesc描述符句柄DSQL_HANDLE_DESCdhlob
56、lctrLob 句柄DSQL_HANDLE_LOB_LOCATORdhobj復(fù)合類型句柄DSQL_HANDLE_OBJECTdhobjdesc復(fù)合類型描述符句柄DSQL_HANDLE_OBJDESCdhbfileBFILE 文件句柄DSQL_HANDLE_BFILE返回值DPI 的函數(shù)執(zhí)行結(jié)果通過(guò)返回值來(lái)反饋給用戶,DPI 包含以下返回值:宏定義值說(shuō)明DSQL_SUCCESS0執(zhí)行成功DSQL_SUCCESS_WITH_INFO1執(zhí)行成功,有警告信息DSQL_NO_DATA100未取得數(shù)據(jù)DSQL_ERROR-1執(zhí)行失敗DSQL_INVALID_HANDLE-2非法的句柄DSQL_NEED_D
57、ATA99需要數(shù)據(jù)DSQL_STILL_EXECUTING2語(yǔ)句正在執(zhí)行DSQL_PARAM_DATA_AVAILABLE101有參數(shù)值可以獲取數(shù)據(jù)類型數(shù)據(jù)類型為數(shù)據(jù)庫(kù)中字段類型和 C 語(yǔ)言的數(shù)據(jù)類型。DPI 中包括以下 DSQL 類型,對(duì)應(yīng)對(duì)象創(chuàng)建時(shí)指定的類型:宏定義定義類型說(shuō)明DSQL_CHARchar(n)定長(zhǎng)字符類型DSQL_VARCHARvarchar(n)變長(zhǎng)字符類型DSQL_BITbit位類型DSQL_TINYINTtinyint有符號(hào)小整型(1 字節(jié))DSQL_SMALLINTsmallint有符號(hào)短整型(2 字節(jié))DSQL_INTint有符號(hào)整型(4 字節(jié))DSQL_BIGI
58、NTbigint有符號(hào)長(zhǎng)整型(8 字節(jié))DSQL_DECdec(p,s)numeric(p,s)number(p,s)精確數(shù)字類型DSQL_FLOATreal單精度浮點(diǎn)型DSQL_DOUBLEfloatdouble雙精度浮點(diǎn)型DSQL_BLOBblob imagelongvarbinary二進(jìn)制大字段DSQL_DATEdate日期DSQL_TIMEtime(n)時(shí)間DSQL_TIMESTAMPtimestamp(n)時(shí)間戳DSQL_BINARYbinary(n)二進(jìn)制類型DSQL_VARBINARYvarbinary(n)變長(zhǎng)二進(jìn)制類型DSQL_CLOBclob textlongvarchar
59、字符大字段DSQL_TIME_TZtime with time zone帶時(shí)區(qū)的時(shí)間類型DSQL_TIMESTAMP_TZtimestamp with time zone帶時(shí)區(qū)的時(shí)間戳類型DSQL_RSETcursor結(jié)果集類型DSQL_CLASSclassclass 復(fù)合類型DSQL_RECORDrecordrecord 復(fù)合類型DSQL_ARRAYarray動(dòng)態(tài) arrayDSQL_SARRAYarray靜態(tài) arrayDSQL_INTERVAL_YEARinterval year年時(shí)間間隔類型DSQL_INTERVAL_M ONTHinterval month月時(shí)間間隔類型DSQL_IN
60、TERVAL_DAYinterval day日時(shí)間間隔類型DSQL_INTERVAL_HOURinterval hour時(shí)時(shí)間間隔類型DSQL_INTERVAL_M INUTEinterval minute分時(shí)間間隔類型DSQL_INTERVAL_SECONDinterval second秒時(shí)間間隔類型DSQL_INTERVAL_YEAR_TO_MONTHinterval year to month年轉(zhuǎn)月時(shí)間間隔類型DSQL_INTERVAL_DAY_TO_HOURinterval day to hour日轉(zhuǎn)時(shí)時(shí)間間隔類型DSQL_INTERVAL_DAY_TO_MINUTEinterval
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年教師招聘考試-小學(xué)信息技術(shù)教師招聘考試歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年安全知識(shí)安全生產(chǎn)知識(shí)競(jìng)賽-安全生產(chǎn)管理知識(shí)競(jìng)賽歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年大學(xué)試題(財(cái)經(jīng)商貿(mào))-貨幣金融學(xué)歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年大學(xué)試題(計(jì)算機(jī)科學(xué))-辦公自動(dòng)化歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年大學(xué)試題(經(jīng)濟(jì)學(xué))-運(yùn)輸經(jīng)濟(jì)學(xué)歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年大學(xué)試題(管理類)-餐飲管理歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年大學(xué)試題(管理類)-旅游企業(yè)財(cái)務(wù)管理歷年參考題庫(kù)含答案解析(5套典型考題)
- 2025年大學(xué)試題(管理類)-中央企業(yè)班組長(zhǎng)管理歷年參考題庫(kù)含答案解析(5套典型考題)
- 基孔肯雅熱發(fā)熱-門診應(yīng)急演練預(yù)案
- 2025年大學(xué)試題(教育學(xué))-學(xué)前教育管理學(xué)歷年參考題庫(kù)含答案解析(5套典型考題)
- 單顆粒冷凍電子顯微鏡結(jié)構(gòu)解析
- 昆山市新初一分班語(yǔ)文試卷含答案
- JT-T-329-2010公路橋梁預(yù)應(yīng)力鋼絞線用錨具、夾具和連接器
- 甄嬛傳電子版劇本第01-10集
- 溯溪完整版本
- 航空航天精神
- 華東師大版八年級(jí)數(shù)學(xué)下冊(cè)全冊(cè)同步課時(shí)練習(xí)(一課一練)
- 譯林版(2021第8次印)初中英語(yǔ)九年級(jí)上冊(cè)單詞默寫表(含音標(biāo)、共439個(gè))
- 長(zhǎng)江三峽水利樞紐施工方案
- 商業(yè)地產(chǎn)市場(chǎng)調(diào)查報(bào)告(四篇)
- 抹灰工程安全技術(shù)交底記錄表
評(píng)論
0/150
提交評(píng)論