使用此指令建立資料庫之前,請首先建立管理網域並註冊 HADB 套裝軟體。如果在執行 hadbm create 時尚未執行這兩個步驟,則會隱式執行這兩個步驟。雖然這看似需要較少的工作,但任何指令中出現故障均會很難除錯。而且,hadbm create 是不可分割的,即如果其中一個隱式指令失敗,則已成功執行的指令將不會回復。因此,最好僅在建立網域並註冊 HADB 套裝軟體之後建立資料庫。
例如,如果 hadbm createdomain 和 hadbm registerpackage 執行成功,但 hadbm create database 失敗,則 hadbm createdomain 和 hadbm registerpackage 所做的變更仍會保留。
建立管理網域。
如需更多資訊,請參閱建立管理網域
註冊 HADB 套裝軟體。
如需更多資訊,請參閱註冊 HADB 套裝軟體。
使用 hadbm create 指令建立資料庫。
如需有關指令語法的資訊,請參閱以下小節。
dbname 運算元指定資料庫名稱,該名稱必須是唯一的。若要確保資料庫名稱的唯一性,請使用 hadbm list 指令列出現有資料庫名稱。請使用預設資料庫名稱,除非需要建立多個資料庫。例如,若要在同一組 HADB 機器上建立具有獨立資料庫的多個叢集,請為每個叢集使用獨立的資料庫名稱。
hadbm create 指令將錯誤訊息寫入主控台,而非記錄檔。
表 3–7 說明特殊 hadbm create 指令選項。請參閱一般選項,以取得其他指令選項說明。
表 3–7 hadbm create 選項
選項 (短形式) |
說明 |
預設 |
---|---|---|
-a |
每個節點上的資料裝置數 (1 到 8 [含])。資料裝置從 0 開始計數。 |
1 |
-d |
裝置路徑。有四個裝置:
|
Solaris 和 Linux:/var/opt/SUNWhadb Windows:C:\Sun\AppServer \SUNWhadb\vers,其中 vers 為 HADB 版本編號。 預設由管理代理程式配置檔案中的 ma.server.dbdevicepath 指定。如需更多詳細資訊,請參閱配置檔案 |
-z |
每個節點的裝置大小。如需更多資訊,請參閱指定裝置大小。 遵循增加現有節點的儲存空間中的說明增加裝置大小。 |
1024MB 最大大小小於最大作業系統檔案大小或 256 GB。最小大小為: (4 x LogbufferSize + 16MB) / n 其中,n 為選項 --datadevices 指定的資料裝置數。 |
-t |
歷史檔案的路徑。此路徑必須已經存在且可寫入。 如需有關歷史檔案的更多資訊,請參閱清除和歸檔歷史檔案 |
預設由管理代理程式配置檔案中的 ma.server.dbhistorypath 指定。如需詳細資訊,請參閱配置檔案 Solaris 和 Linux:/var/opt/SUNWhadb Windows:REPLACEDIR (在執行階段由實際 URL 替代。) |
-H |
以逗號分隔的資料庫中節點之主機名稱或 IP 位址 (僅 IPv4) 清單。使用 IP 位址可避免對 DNS 查詢的依賴性。主機名稱必須為絕對的。localhost 或 127.0.0.1 不能用做主機名稱。主機名稱 請參閱指定主機,以取得更多資訊。 |
無 |
--package=name -k |
HADB 套裝軟體名稱 (版本)。如果找不到套裝軟體,將註冊預設套裝軟體。 已停用此選項。使用 hadbm registerpackage 指令在網域中註冊套裝軟體。 |
無 |
--packagepath=path-L |
HADB 軟體套裝軟體的路徑。僅當套裝軟體未在網域中註冊時使用。 已停用此選項。使用 hadbm registerpackage 指令在網域中註冊套裝軟體。 |
無 |
-b |
用於節點 0 的連接埠基底號。在步驟 20 中自此數字開始為後繼節點指定連接埠基底號。每個節點使用其連接埠基底號及接下來連續的五個已編號連接埠。 若要在同一機器上執行數個資料庫,請明確配置連接埠號。 |
15200 |
-s |
備援節點數。此數字必須等於或小於在 --hosts 選項中指定的節點數。 |
0 |
-S |
以逗號分隔的資料庫配置屬性 (格式為 name =value) 清單。如需資料庫配置屬性說明,請參閱清除和歸檔歷史檔案 |
無 |
以下指令為建立資料庫的範例:
hadbm create --spares 2 --devicesize 1024 --hosts n0,n1,n2,n3,n4,n5
可使用 --hosts 選項指定以逗號分隔的資料庫節點之主機名稱或 IP 位址清單。hadbm create 指令可為清單中的每個主機名稱 (或 IP 位址) 建立一個節點。節點數必須相等。使用重複主機名稱在同一機器上建立具有不同連接埠號的多個節點。請確定相同機器上的節點並非鏡像節點,也不是來自不同的 DRU。
節點以此選項中列出的順序自零開始編號。第一個鏡像對為節點零 (0) 和一 (1),第二個為二 (2) 和三 (3),以此類推。奇數編號的節點在一個 DRU 中,偶數編號的節點在其他 DRU 中。使用 --spares 選項,備援節點為編號最大的節點。
如需有關配置雙網路介面的資訊,請參閱配置網路備援
使用 --devicesize 選項可指定裝置大小。建議的裝置大小:
(4x / nd + 4l/d) / 0.99
其中,
x 為使用者資料的總大小
n 為節點數 (由 --hosts 選項指定)
d 為每個節點上的裝置數 (由 --datadevices 選項指定)
l 為記錄緩衝區大小 (由屬性 LogBufferSize 指定)
如果可能會發生重新分段 (例如,使用 hadbm addnodes),則建議的裝置大小為:
(8x / nd + 4l/d) / 0.99
若要為每個節點或服務設定不同的裝置路徑,請使用 hadbm create 的 --set 選項。有四種類型的裝置:DataDevice、NiLogDevice (節點內部記錄裝置)、RelalgDevice (相關代數查詢裝置) 和 NoManDevice (節點管理員裝置)。每個 name =value 對的語法如下,其中,-devno 僅在 device 為 DataDevice 時需要:
node-nodeno.device-devno.Devicepath
例如︰
--set Node-0.DataDevice-0.DevicePath=/disk0, Node-1.DataDevice-0.DevicePath=/disk 1
還可以設定歷史檔案的異質多工式路徑,如下所示:
node-nodeno.historypath=path
如需有關歷史檔案的資訊,請參閱清除和歸檔歷史檔案
未設定的特定節點或裝置裝置路徑均預設為 --devicepath 值。
使用 hadbm set 和 hadbm addnodes 指令變更歷史檔案的裝置路徑和位置。
如果您在建立資料庫時遇到困難,請檢查以下內容:
確定在所有主機上啟動了管理代理程式並定義了 HADB 網域。如需詳細資訊,請參閱啟動管理代理程式
必須設定檔案和目錄權限,以允許以下使用者對安裝、歷史、裝置和配置路徑擁有讀取、寫入和執行存取權限:
Sun Java System Application Server 管理使用者 (安裝期間設定)
HADB 系統使用者
如需有關設定使用者權限的詳細資訊,請參閱準備 HADB 設定
Application Server 和 HADB 連接埠指定不可與同一機器上的其他連接埠指定衝突。建議的預設連接埠指定為:
Sun Java System 訊息佇列:7676
IIOP:3700
HTTP 伺服器:80
管理伺服器:4848
HADB 節點:每個節點使用六個連續的連接埠。例如,對於預設連接埠 15200,節點 0 使用 15200 至 15205 ,節點 1 使用 15220 至 15225,以此類推。
磁碟空間必須足夠,請參閱「Sun Java System Application Server Enterprise Edition 8.2 版本說明」。