安裝附錄
針對 Windows 安裝並配置 PostgreSQL
下方提供的指示適用於 PostgreSQL 管理員 (非資料庫主機伺服器)。如果您將 HA 層納入實行,請參閱本説明中心的 ThingWorx 高可用性部份。
安裝 PostgreSQL 並建立新的使用者角色
1. 如需有關支援 PostgreSQL 版本的資訊,請參閱 ThingWorx 系統需求
* 
此程序的步驟使用 PostgreSQL x.x 版,其中 x.x 是支援的版本。
2. 從下列網站下載並安裝適當版本的 PostgreSQL:http://www.postgresql.org/download/
3. 使用 pgAdmin 開啟 PostgreSQL。pgAdmin 工具可在 PostgreSQL 下載中找到。
* 
pgAdmin 是資料庫的開放來源管理工具,包括在 PostgreSQL 下載中。該工具擁有完整的 Unicode 支援、快速多執行緒查詢和資料編輯工具,支援所有 PostgreSQL 物件類型。
4. 建立新使用者角色:
a. 以滑鼠右鍵按一下 PostgreSQLx.x (<資料庫的 IP 或主機名稱>:<PostgreSQL 的埠號>)。範例:PostgreSQLx.x (localhost:5432)
* 
在此流程稍後的部份,會將此使用者稱為 thingworxusername
b. 選取「建立 - 登入/群組角色」。在「一般」標籤的「名稱」欄位中,針對 PostgreSQL 管理輸入 <PostgreSQL 使用者角色名稱>。
c. 「權限」標籤上,針對「是否可以登入?」選取「是」
d. Definition 標籤的 Password 欄位中,為 PostgreSQL 輸入唯一且安全的密碼。
5. 按一下「確定」。請記住此步驟中建立的使用者角色名稱與密碼,以便稍後使用。
配置位於除 ThingWorx 以外伺服器上的 PostgreSQL 資料庫
* 
此部份對於開發環境為選用,但應在所有生產環境中實行。
依預設,PostgreSQL 伺服器在鎖定狀態下安裝。伺服器只會偵聽來自本機電腦的連線。為了實現 ThingWorx 與 PostgreSQL 伺服器之間的通訊,需要進行某些組態變更,以便 PostgreSQL 偵聽來自其他使用者 (ThingWorx 使用者、預設為 twadmin) 與/或其他電腦 (ThingWorx 安裝在單獨的伺服器上) 的連線。
您需要知道在這些步驟您的 PostgreSQL 資料目錄所在的位置。在 Windows 中,預設資料資料夾是 C:\Program Files\PostgreSQL\x.x\data
修改 pg_hba.conf 檔案,並依所需組態新增以下行:
如果您希望允許連線所有 IPv4 位址:
host all all 0.0.0.0/0 md5
如果您希望僅允許連線特定 IPv4 位址 (將 <ipAddress> 取代為進行連線之電腦的 IP 位址):
host all all <ipAddress>/32 md5
如果您希望允許連線所有 IPv6 位址:
host all all ::0/0 md5
如果您希望僅允許連線特定 IPv6 位址 (將 <ipv6Address> 取代為相應的位址):
host all all <ipv6Address>/128 md5
可以使用額外裕量行 (個別 IP 或範圍) 或對應於需要 PostgreSQL 資料庫存取權限之電腦的子網路遮罩進行其他任意組合。
此檔案的任何變更都需要重新啟動資料庫服務。
* 
如需有關配置 pg_hba.conf 檔案的其他資訊,請參閱正式 PostgreSQL 文件 集
配置及執行 PostgreSQL 資料庫指令集
欲設定 PostgreSQL 資料庫與表格空間,必須配置及執行 thingworxPostgresDBSetup.bat 指令集。
* 
ThingWorx 9.3.1 之後,不再需要建立 ThingworxPostgresqlStorage 資料夾或任何 -l 參數相關步驟,且 ThingWorx 資料將會儲存在 Postgresql 的預設位置。
1. <postgres-installation>/bin 資料夾新增至系統 PATH 變數。
2. 從 ThingWorx 軟體下載封裝取得並開啟 thingworxPostgresDBSetup.bat 指令集。PTC 軟體下載中提供了 ThingWorx 下載。該指令集位於 install 資料夾中。
3. 如有必要,配置該指令集。參照下表中的選項。
thingworxPostgresDBSetup 指令集選項
選項
參數
預設
描述
範例
t 或 -T
表格空間
thingworx
表格空間名稱
-t thingworx
-p 或 -P
5432
PostgreSQL 埠號
-p 5432
-d 或 -D
資料庫
thingworx
欲建立的 PostgreSQL 資料庫名稱
-d thingworx
-l 或 -L
tablespace_location
/ThingworxPostgresqlStorage
在 ThingWorx 9.3.0 及之前版本中需要。 檔案系統中儲存表示資料庫物件之檔案的位置。使用者需要先以權限手動建立此資料夾,才能執行指令集,然後指定路徑,例如 -l D:\ThingworxPostgresqlStorage。
* 
資料夾必須擁有對應的擁有權與存取權限。其應由執行 PostgreSQL 服務的相同使用者擁有且應擁有為該使用者指派的完全控制權。此使用者通常是 NETWORK_SERVICE,但在您的環境中可能會有所不同。
-l or -L
-h 或 -H
主機
localhost
主機的名稱
-h localhost
-a 或 -A
adminusername
postgres
管理員名稱
-a postgres
-u 或 -U
thingworxusername
twadmin
具有資料庫寫入權限的使用者名稱。
-u twadmin
4. 執行指令集。
配置及執行模型/資料提供者結構描述指令集
欲設定 PostgreSQL 模型/資料提供者結構描述,必須配置並執行 thingworxPostgresSchemaSetup.bat 指令集。此指令集會在本機主機上所安裝之 PostgreSQL 實例的資料庫下設定公用結構描述。
1. 從 ThingWorx 軟體下載封裝的 install 資料夾中取得 thingworxPostgresSchemaSetup.bat 指令集。PTC 軟體下載中提供了 ThingWorx 下載。
2. 如有必要,配置該指令集。參照下表中的選項。
thingworxPostgresSchemaSetup 指令集選項
選項
參數
預設
描述
範例
-h 或 -H
主機
localhost
資料庫的 IP 或主機名稱。
-h localhost
-p 或 -P
5432
PostgreSQL 埠號。
-p 5432
-d 或 -D
資料庫
thingworx
要使用的資料庫名稱。
-d thingworx
-s 或 -S
結構描述
公開
要使用的結構描述名稱。
-s myschema
* 
若未使用 public$user ,您必須編輯 postgresql.conf 檔案並將 SEARCH_PATH 新增至您的結構描述。例如,search_path = '"$user", public, "myschema"'
-u 或 -U
使用者名稱
twadmin
更新資料庫結構描述的使用者名稱
-u twadmin
-o 或 -O
選項
所有
系統共提供以下三種選項:
所有:設定指定資料庫的模型和資料提供者結構描述。
模型:設定指定資料庫的模型提供者結構描述。
資料:設定指定資料庫的資料提供者結構描述。
-o data
3. 執行指令集。
配置 platform-settings.json
1. 開啟位於 ThingworxPlatform 資料夾中的 platform-settings.json 檔案。
2. 請參閱 platform-settings.json 組態詳細資訊中的 PostgresPersistenceProviderPackage 組態選項,然後新增至 platform-settings.json。
* 
如果您的 PostgreSQL 伺服器與 ThingWorx 伺服器不同,且 ThingWorx 安裝有問題,請審核這些 Tomcat 記錄檔與 platform-settings.json 檔案。預設安裝假設兩個伺服器位於相同的電腦上。
(選用) 加密 PostgreSQL 密碼
依照加密密碼中的步驟加密密碼。
(選用) 安裝 PostgreSQL 用戶端封裝和 PostgreSQL 使用者
欲從用戶端電腦向 PostgreSQL 伺服器發出 PostgreSQL 指令,請從 PostgreSQL 使用者執行该操作。可以在用戶端電腦上安裝 postgresql-client-x.x 封裝。有關如何安裝此封裝,請參閱 PostgreSQL 發佈文件集。此封裝可提供一些管理工具,如 psql
這是否有幫助?