简介:这份文档面向需要了解 Teamcenter 基础架构与部署依赖的 PLM 初学者和运维人员,聚焦 Siemens PLM 解决方案 2007 版本在数据库层面的安装配置,帮助读者理清 Oracle 10g 与 Teamcenter 之间的依赖关系。资源包共 1 个 doc 文件,约 3MB,以图文步骤形式记录了 Oracle 数据库软件安装、监听程序创建、数据库模板拷贝以及通过 Database Configuration Assistant 建库等关键环节,并给出全局数据库名 tceng、统一口令等具体参数示例。内容还涉及企业版安装类型选择、仅安装数据库软件、Net Manager 创建 LISTENER 监听、lsnrctl 启动监听等操作要点,可作为搭建早期 Teamcenter 实验环境的参考笔记。目前已有 216 人学习,适合希望从数据库侧切入理解 Teamcenter 完整部署流程的读者查阅。
1. 老版本 PLM 环境搭建:为什么 Teamcenter 2007 的安装绕不开 Oracle 10g
手里拿到一套 Teamcenter 2007 的安装介质,第一反应往往是直接双击 setup。真这么干,十有八九卡在数据库连接那一步。这套 2007 年的 PLM 系统,数据层强绑定 Oracle 10g,而且不是装完数据库就能用——它要求你先建一个带 Teamcenter 模板的实例,全局库名、监听器、口令全都有约定。换句话说,安装 Teamcenter 2007 本质上是先把 Oracle 10g 这层地基按它的规矩砌好,再往上叠应用服务。
这份资源解决的正是地基这一段:从 Oracle 10g 企业版的静默式安装、监听器创建,到把 Teamcenter 自带的 dbca 模板塞进 Oracle 的模板目录、用 DBCA 建出tceng库。适合两类人——需要复现老版本环境做迁移验证的从业者,以及想搞懂 Teamcenter 基础架构依赖关系的工程师。下面按我实际拆装的顺序走一遍,参数和坑都标出来。
2. Oracle 10g 安装与监听器:企业版、仅装软件、LISTENER 三步走
2.1 安装类型为什么选「企业版 + 仅安装数据库软件」
Oracle 10g 的安装向导第一步会让你选「基本安装」还是「高级安装」。基本安装会顺手把数据库实例也建了,但那个实例不带 Teamcenter 模板,建了也白建,后面还得删。所以这里必须走高级安装,把「装软件」和「建库」两件事拆开。
安装类型选企业版,不是因为它功能多,而是 Teamcenter 2007 的模板依赖企业版才带的组件(比如某些分区选项)。标准版装完再回头补组件,比一开始就选企业版麻烦得多。
关键的一步在「配置选项」页:选「仅安装数据库软件」。这一项决定了安装器只铺二进制文件,不触发 DBCA。装完你会得到一个干净的OraDb10g_home1,没有任何实例,正好留给后面用 Teamcenter 模板建库。
安装目录按实际磁盘规划指定,注意路径里别带空格和中文,Oracle 10g 的某些脚本对空格处理很脆。整个安装过程没有太多需要干预的地方,装完点退出即可。
2.2 用 Net Manager 建监听器,再用 lsnrctl 拉起来
软件装完,数据库还没有对外服务的能力,得先有监听器。图形化入口在开始菜单:Oracle - OraDb10g_home1→Net Manager。进去后按「编辑」→「创建」→「监听程序」的路径走,监听程序名填LISTENER。
这里有个细节:Net Manager 建完监听器只是写了配置文件(listener.ora),进程并没有起来。很多人建完就去连库,报ORA-12541: TNS:no listener,就是漏了启动这一步。命令行拉起:
# 启动监听器,LISTENER 是 Net Manager 里起的名字 lsnrctl start # 确认监听状态,看到 READY 才算真正在听 lsnrctl statuslsnrctl start不带参数时默认操作名为LISTENER的监听器,和上面 Net Manager 里填的名字对上了。status输出里重点看两处:STATUS是否为READY,以及监听端口(默认 1521)有没有被别的进程占。如果status报错说找不到监听器,回头检查listener.ora里的名字拼写,大小写敏感。
提示:监听器起来之后先别急着建库,用
tnsping测一下服务名解析,能省掉后面一半的连接类报错。
3. 把 Teamcenter 模板喂给 DBCA:拷贝路径与建库参数
3.1 模板文件从哪拷到哪,路径别搞反
Teamcenter 2007 的安装介质里自带一套 Oracle 建库模板,位置在:
Tc2007.1_wnti\tc\db_scripts\oracle这个目录下的文件要整体拷到 Oracle 的 DBCA 模板目录:
assistants\dbca\templates后者是相对于 Oracle 安装根目录的路径,完整路径类似<ORACLE_HOME>\assistants\dbca\templates。拷错方向是常见翻车点——有人把 Oracle 的模板往 Teamcenter 目录里拷,结果 DBCA 里根本看不到 Teamcenter 选项。记住方向:Teamcenter 的模板 → Oracle 的模板目录。
拷完不用重启什么服务,DBCA 每次启动会重新扫这个目录。如果 DBCA 里还是看不到模板,检查文件扩展名是不是.dfb或.dbc,以及有没有被系统隐藏。
3.2 DBCA 建库:全局库名 tceng、统一口令、后面一路默认
模板就位后,从开始菜单进Oracle - OraDb10g_home1→配置和移植工具→Database Configuration Assistant。向导里选「创建数据库」,模板列表里应该能看到Teamcenter Oracle 10g,选中它。
接下来几个参数是硬约定,不能随意改:
| 参数 | 取值 | 说明 |
|---|---|---|
| 全局数据库名 | tceng | Teamcenter 连接串里引用的库名,改了应用侧要同步改 |
| 口令方案 | 所有帐户使用同一口令 | 简化管理,老环境常见做法 |
| 口令 | tceng | 与库名一致,仅限隔离测试环境 |
| 数据文件位置 | 按磁盘规划 | 默认即可,空间要留够 |
| 内存/初始化参数 | 默认 | 模板已预设,别手改 |
全局库名填tceng之后,SID 通常也跟着变成tceng,连接串形如tceng@//host:1521/tceng。口令用tceng是这套老环境的惯例,但只适合内网隔离的测试机,任何对外暴露的环境都必须换强口令——这一点别偷懒。
选完模板、填完库名和口令,后面数据文件位置、闪回恢复区、内存分配、字符集这些页面直接「下一步」到底。模板里已经把这些预设成 Teamcenter 能接受的值,手动改反而容易踩字符集不匹配的坑。建库过程会跑十几分钟,结束时记下 Enterprise Manager 的访问地址,虽然老环境基本用不上,但排错时能看实例状态。
建完库,回到命令行验证一下:
# 用 sysdba 连本地实例,确认库真的起来了 sqlplus / as sysdba # 在 sqlplus 里查实例名和状态 SELECT instance_name, status FROM v$instance;status显示OPEN才算建库成功。如果连不上,先lsnrctl status看监听器还在不在,再查ORACLE_SID环境变量有没有指向tceng。
4. 安装过程避坑:五条血泪记录
4.1 现象:DBCA 模板列表里没有 Teamcenter 选项
原因:模板文件拷错了目录,或者拷到了templates的上级目录。DBCA 只扫<ORACLE_HOME>\assistants\dbca\templates这一层,子目录不认。
解决:确认文件直接躺在templates目录下,不是templates\oracle之类的子文件夹。拷完重开 DBCA。
4.2 现象:建库到一半报 ORA-12547 或连接中断
原因:监听器没起,或者建库过程中监听器被停掉了。DBCA 建库需要本地监听配合。
解决:建库前先lsnrctl status确认READY,建库期间别去动监听器。中断后残留的实例文件要清干净再重来,否则 DBCA 会报实例已存在。
4.3 现象:应用连库报 ORA-01034: ORACLE not available
原因:ORACLE_SID环境变量没设成tceng,或者设了但当前会话没生效。
解决:命令行set ORACLE_SID=tceng(Windows)后重开 sqlplus。永久生效要写进系统环境变量,改完注销重登。
4.4 现象:口令设成 tceng 后,某些工具连不上
原因:Oracle 10g 默认口令大小写不敏感,但部分老客户端按大写传。Teamcenter 2007 的某些组件对大小写处理不一致。
解决:统一用小写tceng,客户端连接串里也别大写。这是老版本玄学之一,遇到连不上先怀疑大小写。
4.5 现象:建库完成但 Teamcenter 服务起不来,日志报模板不匹配
原因:建库时手动改了字符集或内存参数,偏离了模板预设值。
解决:删库重建,全程默认。老环境的模板是配套调过的,手改参数属于给自己挖坑,没有后悔药。
5. 验证与进阶:建库之后先跑通这三项再往下走
库建完不等于地基稳了。我一般会按顺序做三项验证,任何一项不过都不往下装应用服务。
第一项,监听与实例的连通性。lsnrctl status看READY,sqlplus / as sysdba看v$instance状态为OPEN,两步都过说明数据库层自洽。
第二项,用普通账户走网络连接,而不是本地 sysdba。这一步模拟的是 Teamcenter 应用侧的真实连法:
# 用 tceng 库的普通账户走 TCP 连接,验证监听器转发正常 sqlplus system/tceng@//localhost:1521/tceng # 连上后确认当前库名,防止连错实例 SELECT name FROM v$database;如果本地 sysdba 能连、网络连接连不上,问题一定在监听器或tnsnames.ora,跟库本身无关。这个区分能省掉大量瞎排查。
第三项,检查模板建出来的表空间和初始 schema 是否符合预期。Teamcenter 模板会预建一批表空间,用下面这条查一下:
-- 列出所有表空间及数据文件,确认模板预建的空间都在 SELECT tablespace_name, file_name, bytes/1024/1024 AS size_mb FROM dba_data_files ORDER BY tablespace_name;对照 Teamcenter 安装文档里的表空间清单,缺哪个说明模板没被完整应用,得回头查模板拷贝那一步。
三项都过,这套 Oracle 10g 地基才算真正可用,可以进入 Teamcenter 服务器组件的安装。从那以后我每次复现老版本 PLM 环境,都会先把「监听器 READY + 网络连接通 + 表空间齐」这三项强制走一遍,再动应用层——跳过任何一项,后面都会以更难查的形式还回来。希望帮到你。
本文还有配套的精品资源,点击获取