據(jù)庫環(huán)境搭建與避坑指南)
簡介面向需要部署PLM環(huán)境的實施、運維與技術(shù)支持人員這份文檔作為一份doc格式的安裝記錄詳細梳理了Teamcenter 2007安裝中數(shù)據(jù)庫層的完整流程重點圍繞Oracle 10.0展開。包內(nèi)僅一份doc文檔壓縮包大小約3MB已有214人學習瀏覽。內(nèi)容包括從選擇高級安裝與企業(yè)版、僅安裝數(shù)據(jù)庫軟件到通過Oracle Net Manager創(chuàng)建LISTENER監(jiān)聽并由命令行l(wèi)snrctl start啟動再到把Teamcenter自帶的Oracle模板復制到Database Configuration Assistant的templates目錄、輸入全局數(shù)據(jù)庫名tceng、統(tǒng)一口令配置等關(guān)鍵步驟。作者不僅列出了點擊路徑還標注了模板所在路徑、監(jiān)聽名稱設(shè)置等容易被忽略的細節(jié)并提示后續(xù)仍需安裝服務(wù)器與客戶端組件、集成CAD系統(tǒng)能幫助讀者避開安裝中的典型問題。盡管2007版本較早但了解其數(shù)據(jù)庫前置配置對理解Teamcenter的基礎(chǔ)架構(gòu)與依賴關(guān)系仍有實用參考價值可作為相關(guān)學習與部署工作的摸底文檔。1. Teamcenter 2007 安裝卡在 Oracle 的人多半不懂這三件事Teamcenter 2007 是老牌 PLM 系統(tǒng)里的一個經(jīng)典版本雖然現(xiàn)在新項目很少用它但很多企業(yè)產(chǎn)線、設(shè)備檔案、工藝數(shù)據(jù)還在它上面跑。裝過的人都知道這版本真正勸退人的不是 Teamcenter 本體而是前面那套 Oracle 10g 環(huán)境的搭建。這份安裝資源把我當年啃了好久的步驟壓縮成了一條可復現(xiàn)的路徑Oracle 軟件怎么裝、監(jiān)聽器怎么建、模板往哪兒拷、DBCA 建庫時每一步到底在干什么。適合兩類人一類是剛接手老 PLM 系統(tǒng)、需要搭一套測試環(huán)境練手的工程師另一類是想搞懂 TC 數(shù)據(jù)庫層關(guān)系、為后續(xù)升級做準備的實施顧問。下面按我實際裝過的流程拆開講參數(shù)和路徑都是可以直接照抄的級別。2. Oracle 10g 軟件安裝高級安裝、企業(yè)版和那步“僅安裝數(shù)據(jù)庫軟件”2.1 為什么選 Oracle 10g 而不是其他版本Teamcenter 2007.1 對應的數(shù)據(jù)庫支持矩陣里Oracle 10g 是被官方驗證過的組合之一11g 在某些補丁包下也能跑但很多老實施項目默認還是走 10g。原因很簡單TC 2007.1 的數(shù)據(jù)庫模板腳本是基于 10g 的語法和目錄結(jié)構(gòu)寫的用 11g 建庫不是不行但容易在字符集、表空間、臨時段這些細節(jié)上翻車。我見過有人拿 11g 硬上建庫能過裝 TC 服務(wù)端時連不上數(shù)據(jù)庫查半天發(fā)現(xiàn)是模板里引用了 10g 的路徑和參數(shù)文件。所以如果你不是非要用新版數(shù)據(jù)庫老老實實按 10g 來這是最穩(wěn)的路線。Oracle 10g 本身分企業(yè)版、標準版、個人版。Teamcenter 的并發(fā)用戶數(shù)、多站點配置、CAD 集成這些特性都要求企業(yè)版所以安裝類型直接選企業(yè)版就對了。還有一個容易被忽略的點10g 的安裝盤分 32 位和 64 位TC 2007.1 的數(shù)據(jù)庫模板很多是在 32 位環(huán)境下打包測試的如果你在 64 位系統(tǒng)上裝 64 位 OracleDBCA 創(chuàng)建數(shù)據(jù)庫時可能報模板加載失敗。后面避坑章里我會專門講。2.2 安裝全程參數(shù)記錄從高級安裝到僅裝軟件Oracle 10g 安裝啟動后第一個關(guān)鍵選擇是“高級安裝”。這里別選“基本安裝”基本安裝會直接創(chuàng)建一個名為 orcl 的數(shù)據(jù)庫實例后面還要刪掉重來純屬浪費半小時。高級安裝的模式下你能自己控制安裝類型、目錄和數(shù)據(jù)庫創(chuàng)建方式。整個過程我按實際點擊順序拆成下面幾步# 1. 啟動安裝程序后選擇高級安裝 # 2. 選擇部署類型企業(yè)版 # 3. 指定安裝目錄比如 D:\oracle\product\10.2.0\db_1 # 4. 在選擇配置選項時選僅安裝數(shù)據(jù)庫軟件 # 5. 點擊安裝等待約 20-30 分鐘 # 6. 安裝結(jié)束后點擊退出第 4 步是全流程里最核心的決策點“僅安裝數(shù)據(jù)庫軟件”意味著不會創(chuàng)建數(shù)據(jù)庫實例只把 Oracle 的軟件組件、監(jiān)聽器工具、命令行工具裝好。Teamcenter 2007 的庫要通過模板創(chuàng)建實例名、數(shù)據(jù)文件位置、內(nèi)存參數(shù)都得按 TC 的要求來如果這里讓 Oracle 自己建一個默認庫后面刪庫重建要費兩倍時間。我一般會給 Oracle 單獨分一個分區(qū)數(shù)據(jù)盤和系統(tǒng)盤分開避免后續(xù)表空間擴容時把 C 盤撐爆。安裝目錄這塊有個細節(jié)Oracle 10g 的絕對路徑不要太深D:\oracle\product\10.2.0\db_1 這種級別就差不多。路徑太長或者帶空格DBCA 建庫時某些腳本會解析出問題。另外Oracle 10g 的安裝用戶和環(huán)境變量在 Windows 下沒有 UNIX 那么講究但安裝目錄的寫權(quán)限要確認到位否則寫到一半報 ORA-01031 權(quán)限不足。2.3 “僅安裝數(shù)據(jù)庫軟件”和“創(chuàng)建數(shù)據(jù)庫”有什么區(qū)別很多第一次裝 TC 的人會在這里猶豫既然 Teamcenter 需要數(shù)據(jù)庫為什么不趁安裝 Oracle 的時候直接建庫答案在于 Teamcenter 需要的不是空庫而是一套包含了 TC 專有表空間、用戶、初始數(shù)據(jù)、存儲過程模板的數(shù)據(jù)庫。用 DBCA 選擇“Teamcenter Oracle 10g”模板創(chuàng)建出來的庫才會有 tcadmin 用戶、TCDATA 表空間、TCS_* 這些預設(shè)對象。如果讓 Oracle 自帶的“創(chuàng)建數(shù)據(jù)庫”選項建一個通用實例模板后續(xù)導入會很別扭。另外僅安裝軟件可以避免端口沖突。Oracle 安裝時如果自動建庫默認會占用 1521 端口并啟動監(jiān)聽如果你機器上已經(jīng)有別的 Oracle 或者數(shù)據(jù)庫服務(wù)這個默認監(jiān)聽會失敗。選“僅安裝數(shù)據(jù)庫軟件”監(jiān)聽器完全由你手動控制什么時候建、用什么端口、是否開機自啟都清楚。整個 Oracle 軟件安裝的部分判斷成功的標準不是安裝向?qū)ё咄甓窍旅孢@個命令能正常輸出版本信息# 打開 DOS 命令行驗證 Oracle 軟件版本 sqlplus /nolog SQL select * from v$version;看到 Oracle Database 10g Enterprise Edition 的版本行才說明軟件層沒問題。接下來才能進入監(jiān)聽器環(huán)節(jié)。3. 監(jiān)聽器創(chuàng)建Dos 命令行、lsnrctl 與 1521 端口3.1 Net Manager 創(chuàng)建 LISTENER 的完整設(shè)置監(jiān)聽器是 Oracle 對外服務(wù)的門衛(wèi)Teamcenter 服務(wù)端連數(shù)據(jù)庫靠的就是它。資源里的路徑是“開始”菜單 -“Oracle - OraDb10g_home1”-“Net Manager”這個工具在 10g 里叫 Net Manager到了 11g 以后改叫 Net Configuration Assistant名字變了但作用一樣。打開 Net Manager 后左側(cè)樹形目錄會顯示“監(jiān)聽程序”這個節(jié)點下默認可能有一個 LISTENER。如果你沒看到任何監(jiān)聽程序按菜單“編輯” -“創(chuàng)建” -“監(jiān)聽程序”彈窗里輸入監(jiān)聽程序名稱LISTENER。名稱最好保持默認因為 TC 2007.1 服務(wù)端安裝時會在配置里找 LISTENER 這個名字你起個別名后面還得手工改配置沒必要。監(jiān)聽程序創(chuàng)建完右側(cè)窗口會顯示監(jiān)聽地址列表。雙擊“監(jiān)聽程序”節(jié)點可以看到它偵聽的地址協(xié)議默認 TCP/IP主機名填本機 IP 或 localhost端口保持 1521。配置完不用重啟電腦Net Manager 會把配置寫入 $ORACLE_HOME\network\admin\listener.ora這個文件路徑要記住排錯時經(jīng)常要看它。-- listener.ora 最終內(nèi)容大致如下 SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DBNAME tceng) (ORACLE_HOME D:\oracle\product\10.2.0\db_1) (SID_NAME tceng) ) ) LISTENER (DESCRIPTION_LIST (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 本機IP)(PORT 1521)) ) )這里有個關(guān)鍵點SID_LIST_LISTENER 里的 SID_NAME 和 GLOBAL_DBNAME 填的是 tceng也就是說監(jiān)聽器在軟件安裝階段就把后面要建的庫名預留好了。如果你監(jiān)聽器建完之后發(fā)現(xiàn)沒這個段后面 DBCA 建庫完客戶端連接時會提示監(jiān)聽器無法識別服務(wù)名。遇到這種情況不要慌用文本編輯器往 listener.ora 里補這段然后重啟監(jiān)聽器就行。3.2 lsnrctl start/status 驗證與開機自啟創(chuàng)建完監(jiān)聽器只是寫好了配置文件服務(wù)還沒起來。資源里寫的是“從命令行啟動監(jiān)聽程序”確實是 10g 時代最常用的方式。# 啟動監(jiān)聽器 lsnrctl start # 查看監(jiān)聽器狀態(tài) lsnrctl statusstart 命令跑完正常輸出里會看到“Listening Endpoints Summary”這一段列出 TCP/IP 協(xié)議的 1521 端口還有“Services Summary”下面服務(wù)名是 tceng。如果 status 輸出里顯示“The listener supports no services”不代表監(jiān)聽器掛了只是數(shù)據(jù)庫還沒建等庫建好再 status 一次就能看到對應服務(wù)。監(jiān)聽器默認不是開機自啟的服務(wù)列表里有一個叫 OracleOraDb10g_home1TNSListener 的服務(wù)把它設(shè)為自動啟動就行了。這里有個經(jīng)驗有些實施團隊在文檔里讓你直接打開 Windows 服務(wù)管理器手動啟動但命令行方式更穩(wěn)因為它會實時報端口占用、命令語法錯誤這類問題。如果 lsnrctl start 報“Cannot start service”大概率是權(quán)限不夠用管理員身份打開命令行再跑一次。3.3 監(jiān)聽端口、SID 與防火墻的關(guān)系TC 2007.1 服務(wù)端安裝時配置數(shù)據(jù)庫連接的地方要填主機名、端口、SID 三件套。主機名填 TC 服務(wù)器能訪問到的數(shù)據(jù)庫服務(wù)器 IP端口默認 1521SID 是 tceng。這三者必須和 listener.ora 保持完全一致多一個空格都不行。防火墻這一塊是新手最容易漏的。數(shù)據(jù)庫服務(wù)器上的 Windows 防火墻要放行 1521 端口Teamcenter 服務(wù)器上的防火墻要放行 7001、8080、9001 等 TC 自身服務(wù)的端口兩臺機器之間的網(wǎng)絡(luò)策略還要允許 Oracle 客戶端與 Oracle 服務(wù)器的 TCP 通信。我的排查習慣是先在 Teamcenter 服務(wù)器上用命令行測試一下端口通不通# 在 TC 服務(wù)器上測試數(shù)據(jù)庫服務(wù)器 1521 端口 telnet 192.168.1.100 1521能連上說明網(wǎng)絡(luò)層面通連不上就檢查防火墻、交換機 ACL 和監(jiān)聽器狀態(tài)。TC 2007 那個年代很多企業(yè)還在用 XP 系統(tǒng)自帶防火墻默認開啟經(jīng)常出現(xiàn)監(jiān)聽器明明在跑、遠端卻連不上的情況。如果你測試服務(wù)器本機連接沒問題、跨機器連接超時第一反應就是看防火墻規(guī)則。4. 數(shù)據(jù)庫模板與 DBCA 建庫tceng 庫從模板到落地的全過程4.1 模板文件拷貝源路徑、目標路徑與文件后綴Teamcenter 2007.1 安裝包里自帶了一套數(shù)據(jù)庫模板路徑是 Tc2007.1_wnti\tc\db_scripts\oracle。這套文件包括建庫腳本、表空間定義、數(shù)據(jù)字典初始化腳本等。Oracle 的 DBCA 工具能直接識別這些模板前提是模板必須放到 Oracle 自己的模板目錄里。# 源路徑Teamcenter 安裝包解壓目錄 Tc2007.1_wnti\tc\db_scripts\oracle # 目標路徑Oracle 10g 安裝目錄下 %ORACLE_HOME%\assistants\dbca\templates%ORACLE_HOME% 就是你第 2 章里填的安裝路徑比如 D:\oracle\product\10.2.0\db_1。拷貝時注意看文件后綴Oracle 10g 的 DBCA 模板分 .dbc 和 .jdbc 兩種10g 用的主要是 .dbc 文件。如果你只拷了 .jdbc 或者只拷了 .dbcDBCA 啟動后可能看不到團隊模板我一般直接把整個 oracle 目錄下的文件全部拷過去省得漏。拷貝完不要急著關(guān)文件夾在 DBCA 的模板列表里確認能看到“Teamcenter Oracle 10g”再往下走。4.2 DBCA 創(chuàng)建 Teamcenter Oracle 10g 數(shù)據(jù)庫的參數(shù)清單啟動 DBCA 的方式是“開始”菜單 -“Oracle - OraDb10g_home1”-“配置和移植工具”-“Database Configuration Assistant”。第一次啟動會彈歡迎界面直接下一步然后按下面的順序操作# 1. 選擇創(chuàng)建數(shù)據(jù)庫下一步 # 2. 模板列表里選擇Teamcenter Oracle 10g # 3. 全局數(shù)據(jù)庫名稱tceng # 4. 選擇所有帳戶使用同一口令口令和確認口令都填 tceng # 5. 后續(xù)三步數(shù)據(jù)文件位置、恢復配置、內(nèi)存參數(shù)全部采用默認點下一步 # 6. 點擊完成等待建庫腳本執(zhí)行全局數(shù)據(jù)庫名 tceng 不只是名字它同時是 Oracle 實例的 SID、監(jiān)聽器識別的服務(wù)名、Teamcenter 配置里的數(shù)據(jù)庫名。所以這個值不能亂起資源里寫的是 tceng 我就一直沿用它。口令的問題后面單獨說這里先說模板選擇你選的“Teamcenter Oracle 10g”模板決定了建庫腳本會創(chuàng)建所有 TC 需要的表空間和用戶。如果你在模板列表里看不到這個選項回到 4.1 檢查拷貝路徑或者確認安裝包解壓是否完整。建庫過程大約耗時 10 到 25 分鐘取決于機器性能。DBCA 界面上會滾動顯示執(zhí)行的腳本其中比較有辨識度的是創(chuàng)建 tcdata 表空間、創(chuàng)建 tcadmin 用戶、導入基礎(chǔ)數(shù)據(jù)字典這幾步。如果你看到腳本長時間卡住不動別急著強制關(guān)閉等幾分鐘10g 在 Windows 上建庫偶爾會有假死現(xiàn)象實際上是磁盤 IO 在磨蹭。4.3 庫名、口令與后續(xù) Teamcenter 連接參數(shù)的對應關(guān)系TC 2007.1 服務(wù)端安裝到數(shù)據(jù)庫配置這一步時會要求填寫數(shù)據(jù)庫連接參數(shù)核心就是主機名、端口、SID、用戶名、口令。這里的對應關(guān)系非常直接主機名是數(shù)據(jù)庫服務(wù)器 IP端口是 1521SID 是 tceng用戶名是 tcadmin模板自動創(chuàng)建口令是你在 DBCA 里設(shè)置的 tceng。-- 用命令行驗證數(shù)據(jù)庫用戶存在 sqlplus system/tcengtceng SQL select username from dba_users where username like TC%;模板建出來的用戶不止 tcadmin 一個還會有一批以 TC 開頭的系統(tǒng)用戶比如 TCU、TCS、TCDBA 之類的。這些用戶的默認口令通常都是統(tǒng)一的口令策略也就是你在“所有帳戶使用同一口令”里設(shè)的 tceng。如果后面 Teamcenter 安裝向?qū)崾灸硞€用戶解鎖或者口令過期回到這里重置就行。有個容易混淆的點Oracle 的“全局數(shù)據(jù)庫名”和“SID”在單實例環(huán)境下可以認為是一個東西但如果你在 DBCA 里把全局數(shù)據(jù)庫名填成 tceng.company.com 這種帶域名的格式SID 實際是 tceng連接參數(shù)里填主機名SID 或主機名服務(wù)名會導致混淆。資源里直接讓你填 tceng 不帶域名這是最干凈的寫法后面省掉一堆麻煩。還有一個我們在項目里踩過的坑模板建庫時默認的數(shù)據(jù)庫字符集。Teamcenter 2007 的老版本對中文支持依賴數(shù)據(jù)庫的字符集設(shè)置如果你的企業(yè)數(shù)據(jù)里有中文圖紙描述、工藝文件建議在 DBCA 選擇字符集環(huán)節(jié)確認是 ZHS16GBK 而不是 AL32UTF8。有些實施者圖省事直接用默認后續(xù)導入中文數(shù)據(jù)時出現(xiàn)亂碼追查起來非常麻煩。建庫完成后如果發(fā)現(xiàn)字符集不對只能重建數(shù)據(jù)庫沒有后悔藥。5. 常見問題Teamcenter 2007 裝 Oracle 數(shù)據(jù)庫的典型踩坑記錄5.1 64 位 Oracle 上模板建庫報錯現(xiàn)象在 64 位 Windows 服務(wù)器上安裝 64 位 Oracle 10gDBCA 選 Teamcenter 模板后建庫進度條走到一半彈出 ORA-01092或者提示文件無法解析。原因TC 2007.1 的數(shù)據(jù)庫模板腳本是在 32 位 Oracle 環(huán)境下編譯和測試的模板里的文件路徑、共享庫名、部分初始化參數(shù)是為 32 位版本寫的。在 64 位版本上執(zhí)行時某些腳本會調(diào)用不存在的動態(tài)庫或者路徑錯位。解決最省事的辦法是裝 32 位 Oracle 10g即使系統(tǒng)是 64 位 WindowsOracle 10g 有對應的 32 位版本可以運行。如果必須用 64 位就要手工逐條檢查模板里的 init 參數(shù)和文件路徑剔除 32 位專用配置這個工作量比較大。所以裝 TC 2007 的老項目數(shù)據(jù)庫服務(wù)器建議直接用 32 位系統(tǒng)或 32 位 Oracle 實例。5.2 DBCA 里找不到 Teamcenter 模板現(xiàn)象DBCA 啟動后模板列表只有“一般用途”和“事務(wù)處理”沒有“Teamcenter Oracle 10g”。原因模板文件沒拷到位或者拷錯了目錄。注意 DBCA 讀取模板的位置是 %ORACLE_HOME%\assistants\dbca\templates不是 Teamcenter 安裝包目錄。很多人把文件拷到了 Oracle 的根目錄或者 examples 目錄DBCA 不會去那讀。解決重新確認模板源路徑 Tc2007.1_wnti\tc\db_scripts\oracle把里面的 .dbc 文件全部復制到 %ORACLE_HOME%\assistants\dbca\templates 下然后重啟 DBCA。如果還是沒有直接手工寫建庫腳本也是備選方案但需要熟悉 TC 的數(shù)據(jù)字典結(jié)構(gòu)不推薦新手嘗試。5.3 全局數(shù)據(jù)庫名帶域名導致連接不上現(xiàn)象DBCA 建庫時全局數(shù)據(jù)庫名填成了 tceng.company.com建庫成功但 Teamcenter 服務(wù)端配置連接時填 tceng 連不上填 tceng.company.com 也連不上。原因全局數(shù)據(jù)庫名和實例名SID是兩回事。tceng.company.com 的 SID 是 tceng但監(jiān)聽器注冊的服務(wù)名可能是 tceng.company.com。Teamcenter 2007 的配置向?qū)Ю锾?SID 的位置如果填了完整域名Oracle 客戶端解析會出錯。解決全局數(shù)據(jù)庫名就寫成 tceng不帶任何域名后綴。如果已經(jīng)建錯了直接改 listener.ora 里的 GLOBAL_DBNAME 和 DBCA 生成的 tnsnames.ora改成 tceng然后重啟監(jiān)聽器和數(shù)據(jù)庫實例。SQL*Plus 連接時用 sqlplus system/tcengtceng 這種簡寫方式。5.4 監(jiān)聽器端口被占、狀態(tài) UNKNOWN現(xiàn)象lsnrctl start 能執(zhí)行但 status 顯示監(jiān)聽端口不是 1521或者“Services Summary”里服務(wù)狀態(tài)是 UNKNOWN。Teamcenter 服務(wù)器上 telnet 1521 不通。原因之前裝過其他 Oracle 實例或 MySQL 之外的服務(wù)占了 1521或者 listener.ora 里寫的主機名是 127.0.0.1導致只在環(huán)回地址上監(jiān)聽外部訪問不到。狀態(tài) UNKNOWN 通常是因為 SID_LIST 配置和實際實例狀態(tài)不一致Oracle 監(jiān)聽器加載了配置但沒注冊上實例。解決先用命令查端口占用確認 1521 沒被占再打開 listener.ora 把 HOST 字段從 127.0.0.1 改成數(shù)據(jù)庫服務(wù)器的實際內(nèi)網(wǎng) IP然后重啟監(jiān)聽器再 lsnrctl status 看狀態(tài)。如果服務(wù)狀態(tài)還是 UNKNOWN檢查數(shù)據(jù)庫實例是否已啟動DBCA 建庫完成后實例應該是 open 狀態(tài)。這個坑在我經(jīng)歷的三四個項目里都出現(xiàn)過而且每次原因都不太一樣建議把它當成第一個排查目標。5.5 內(nèi)存參數(shù)設(shè)置過小導致實例起不來現(xiàn)象DBCA 建庫過程顯示成功但執(zhí)行 lsnrctl status 發(fā)現(xiàn)服務(wù)狀態(tài)一直 UNKNOWNSQL*Plus 連接報 ORA-01034 ORACLE not available。原因建庫時內(nèi)存配置選了默認的“小型”檔SGA 和 PGA 分配不足實例啟動時 pfile 里的參數(shù)不滿足最低要求。TC 2007.1 模板里有一部分初始化參數(shù)針對生產(chǎn)環(huán)境要求 sga_target 和 pga_aggregate_target 至少一定水平低于這個值實例會直接拒絕啟動。解決用 sqlplus 進入空閑實例手動指定參數(shù)啟動SQL startup mount; SQL alter system set sga_max_size600M scopespfile; SQL alter system set sga_target600M scopespfile; SQL alter system set pga_aggregate_target200M scopespfile; SQL shutdown abort; SQL startup;如果機器本身內(nèi)存不大至少保證 sga_target 在 600M 以上pga 在 200M 以上。低于這個區(qū)間TC 建庫腳本里某些大表數(shù)據(jù)插入會報臨時表空間不足而且日志里不會直接提示內(nèi)存不夠表現(xiàn)為各種莫名其妙的 ORA-600 內(nèi)部錯誤。內(nèi)存不足這個問題在虛擬機上裝 TC 2007 時特別常見因為默認虛擬機只給 2G 內(nèi)存Oracle 10g、Teamcenter 服務(wù)端、客戶端全擠在一起內(nèi)存根本不夠分。6. 裝完不是結(jié)束驗證 tceng 庫狀態(tài)并接上 Teamcenter如果你跟我一樣走到這一步Oracle 10g 軟件裝完、監(jiān)聽器起來了、tceng 庫也通過 DBCA 用 Teamcenter 模板創(chuàng)建成功接下來千萬別急著去裝 Teamcenter 服務(wù)端。先花十分鐘把數(shù)據(jù)庫這個黑匣子驗一遍確認它真的能被外部連接使用。第一步是檢查監(jiān)聽器狀態(tài)和數(shù)據(jù)庫實例狀態(tài)。先 lsnrctl status 看端口和服務(wù)的注冊情況再用命令行連進去看數(shù)據(jù)庫 open_mode 和字符集。-- 檢查數(shù)據(jù)庫當前狀態(tài) sqlplus / as sysdba SQL select name, open_mode from v$database; -- 檢查關(guān)鍵表空間是否存在 SQL select tablespace_name from dba_tablespaces where tablespace_name like TC%; -- 檢查 TC 系統(tǒng)用戶是否存在 SQL select username from dba_users where username like TC%;open_mode 顯示 READ WRITETC 開頭的表空間和用戶都在說明模板建庫這一步真的成功了。如果 open_mode 是 MOUNTED 或 READ ONLY說明實例處于半啟動狀態(tài)按第 5 章的內(nèi)存參數(shù)方式重啟實例。表空間缺失或用戶缺失那就得回到 DBCA把模板重新跑一遍。第二步是驗證 Teamcenter 服務(wù)器到數(shù)據(jù)庫的連通性。Teamcenter 2007 服務(wù)器端用的是 Oracle 客戶端連接庫配置數(shù)據(jù)源時填的是主機名、端口、SID 和用戶口令。網(wǎng)絡(luò)上有一個固定的測試順序——先測端口通不通再測客戶端能不能解析 SID最后測用戶口令對不對。端口測試用 telnetSID 解析測試用 tnsping口令驗證用 sqlplus 遠程鏈接三步都過了Teamcenter 服務(wù)端安裝向?qū)Ю锏臄?shù)據(jù)庫連接測試才能順利通過。# 在 Teamcenter 服務(wù)器上測試 Oracle 監(jiān)聽連通性 tnsping tceng # 用遠程 sqlplus 驗證登錄 sqlplus tcadmin/tceng192.168.1.100:1521/tceng如果 tnsping 通了但 sqlplus 登錄報 ORA-01017通常是口令不一致回到建庫那步把 tcadmin 的口令重置一下SQL alter user tcadmin identified by tceng;從安裝 Oracle 到最后這一步我得出一個習慣每次部署 TC 數(shù)據(jù)庫環(huán)境都強制走一遍“驗證清單”再進入下一環(huán)節(jié)。先確認軟件版本、再確認監(jiān)聽器和數(shù)據(jù)庫實例狀態(tài)、最后確認表空間和用戶完整這是在這個老版本上最值得堅持的操作。希望這份拆解能幫你在裝 Teamcenter 2007 的時候少走點彎路。本文還有配套的精品資源點擊獲取