EBS
模块问题
AP
无法导入混合类型的发票
-
修改AP标准程序包的校验逻辑
11i AP_IMPORT_INVOICES_PKG.v_check_invoice_type_amount
R12 AP_IMPORT_VALIDATION_PKG.v_check_invoice_type_amount
-
先以STANDARD/CREDIT类型导入,再去UPDATE AP_INVOICES_ALL表
修改PACKAGE是比较常用的方法,风险是升级或者补丁可能覆盖修改的package
供应商新建无编号填写框
看下应付的设置,是自动编号还是人工

cf_source_nameformula
发票导入报错:
REP-1401: 'cf_source_nameformula': Fatal PL/SQL error occurred.
ORA-01403: no data found
解决:
Please check if the Sources being passed in the Invoice Import interface tables are valid.
- Define the source :
With Payables responsibility, navigate to Setup : Lookups -> Payables.
In the Payables Lookups window, search for the SOURCE Type.
Define your Lookup Code.- Populate the table AP_INVOICES_INTERFACE column SOURCE with the lookup code you have defined in the Payables Lookups window.
Correct them and re-run the Invoice interface program.
AR
收款金额查询
FORM.ARXRWMAI -> BLOCK.RGW_FOLDER TRIGGER.POST_QUERY
-> PLL.ARXRWRCT rgw_receipts_blk.receipts('POST-QUERY');
-> PLL.ARXRWRCT rgw_receipts_blk_private2.post_query_logic(event);
-> PKG arp_process_rcts.post_query_logic
COMN IMPORT
POIXMLDocumentPart
-
问题:通用导入解析excel中使用的POI,具体有哪些JAR包,我找到了POI 3.9中的这些
但还是报错org.apache.poi.POIXMLDocumentPart这个没有找到 -
解决:
- 通过maven看一下,试试https://mvnrepository.com/artifact/org.apache.poi/poi/3.9
可以先确定一下3.9的这个版本是否有这个方法。 - 还有一种可能,服务器上有其他版本poi 的jar包。导致你代码里面调用的不是3.9的
- 通过maven看一下,试试https://mvnrepository.com/artifact/org.apache.poi/poi/3.9
FA
资产类型修改API
问题:
- 请问fa资产类型修改应该调用哪个api,fa_adjustment_pub.do_adjustment和fa_asset_desc_pub.update_desc好像都不行,我需要修改asset_type做cip转资
解决:
FA_RECLASS_PUB.do_reclass (
-- std parameters
p_api_version => l_api_version,
p_init_msg_list => l_msg_list,
p_commit => l_commit_flag,
p_validation_level => l_validation_level,
p_calling_fn => l_calling_fn,
x_return_status => l_return_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
-- api parameters
px_trans_rec => l_trans_rec,
px_asset_hdr_rec => l_asset_hdr_rec,
px_asset_cat_rec_new => l_asset_cat_rec_new,
p_recl_opt_rec => l_recl_opt_rec
);
分配行导入

FND
启用关闭其他表单

-
法1:进入系统管理员职责,定位到职责定义界面,查出相关职责后,在其菜单排除项选择(浏览器:禁用多表单)(Navigator: Disable Multiform):
-
法2:取消授权功能授权
浏览器选项
- HTML application/vnd.ms-excel Microsoft Excel
值集累计组设置

FnxXdfGen Invalid UTF8
Unable to apply XSLT transformation on the xml file
Exception occured : Invalid UTF8 encoding.
Generating xdf - xxx.xdf
Error Message is null
Xdfgen.pl Fail To Generate The Required XDF File When A Table Comment Created Via A 'COMMENT ON COLUMN' Statement Contains Non-English (eg. Japanese) Characters (Doc ID 2077589.1)
Bug no patch
GL
汇总账户
- 新建父级科目后,需运行请求生成汇总账户:程序 - 逐级添加/删除汇总模板
"程序 - 维护汇总模板"功能待研究
XLA账户逻辑包
大概叫 XLA_(application_id)AAD(type)_(XXXX)_PKG.
该包的生成账户组合的动态逻辑在XLA_CMP_ADR_PKG控制
HRMS
安全性
- 维护组织列表后,需运行请求"维护安全性清单",将组织数据从 per_security_organizations 同步至 per_organization_lists,mo_global.init中,依据的表是per_organization_lists
INV
EAM-AREA
- API: EAM_ASSET_AREAS_PUB
- TBL: MTL_EAM_LOCATIONS

Item Import
Performance
Use interface table instead of API ego.._pub
Master controlled attribute value conflict
Master controlled attribute value conflict in child organization for one of the following attributes:
Track In Installed Base(COMMS_NL_TRACKABLE_FLAG),
Level of IB Tracking(IB_ITEM_TRACKING_LEVEL),
Create Fixed Asset(ASSET_CREATION_CODE),
Enable Provisioning(COMMS_ACTIVATION_REQD_FLAG),
Orderable On Web(ORDERABLE_ON_WEB_FLAG),
Back Orderable(BACK_ORDERABLE_FLAG).查看提示的字段是否有主组织控制属性,却在自组织创建/更新
OM
API
- DOC 746787.1
PO
导入PO
DOC ID 1406003.1
供应商新建名称重复
问题:
- 新建供应商报错:此供应商名称已经存在。 请重新输入
解决:
SELECT supplier_numbering_method,
supplier_num_type,
next_auto_supplier_num,
max(lpad(segment1, 30, '0')) padmax_sup_num
FROM ap_product_setup, ap_suppliers
GROUP BY supplier_numbering_method, supplier_num_type, next_auto_supplier_num;
PROJ
项目抽样API
- gmd_samples_pub
WebAdi
无法下载

upload document : null
问题:
- error processing upload document : null
解决:
- 配置文件 BNE: Enable OOXML Standard 设为"否"试试
Default Line Limit
Layout Update Page:

Batch Compile
# 编译java
cd $JAVA_TOP
javac oracle/apps/dfs/webadi/utilities/sql/*.java
javac oracle/apps/dfs/webadi/integrator/upload/*.java
javac oracle/apps/dfs/webadi/integrator/validators/*.java
javac oracle/apps/dfs/webadi/integrator/component/*.java
# 删除webadi java
cd $JAVA_TOP/oracle/apps/dfs
find . -name '*.java' -exec rm -rf {} \;
# 复制到oa_html
cd $JAVA_TOP/oracle/apps/
cp -r dfs $OA_HTML/WEB-INF/classes/oracle/apps/
配置文件
FND
-
并发:提交每个请求后显示请求摘要(Concurrent: Show Requests Summary After Each Request Submission)
设置为是,阻止弹出“是否提交另一项请求”的提示
-
字符集配置文件
并发:客户机文件名字符集(Concurrent: Client Filename Characterset) (ZHS16CGB231280)
ICX:客户机 IANA 编码(ICX_CLIENT_IANA_ENCODING) (Unicode (UTF-8))
FND: NATIVE CLIENT ENCODING(FND_NATIVE_CLIENT_ENCODING)--客户机字符编码
-
用户日期格式首选项 - 配置文件
ICX:日期显示样式 (ICX_DATE_FORMAT_MASK)
-
系统管理员职责下,查看他人输出结果:
并发:报表访问层(CONC_REPORT_ACCESS_LEVEL)
ADI:允许系统管理员查看所有输出(ADI_WHEN_SYSA··DMIN_OUTPUT_VIEW)
-
系统界面颜色更改
Java 色彩设计(FND_COLOR_SCHEME)
-
登录口令%
-
%代理%
-
浏览器:文本
控制请求日志是否在浏览器中显示,若是,置为Browser,否则留空即可
-
导出 MIME 类型
标准导出文件格式 application/vnd.ms-excel
-
人工口令重置已启用(MANUAL_PWD_RESET)
在较新的12.2版本EBS中,启用ASADMIN时,无重置口令按钮,需设置此配置文件为 是 -
上载文件的大小限制
-
地点名称
GL
-
GLDI:创建组标识
标准日记账导入WEBADI中存在错误信息或有多人同时使用时,必须设置 控制序号
INV
-
INV调试
-
TP:INV Transaction processing mode
-
On-line processing:界面停止响应,直到做完事务到MMT表
-
Immediate concurrent processing:插入数据到接口表,并立即提交一个处理请求,界面可以继续操作
-
Background processing:插入数据到接口表,界面可以继续操作,需要用户手工提交处理请求
-
Form. level processing:有各种事务处理对应的Profile分别控制,比如”TP:WIP Material Transaction Form“等
-
MRP
-
计划管理器报红,又无明显报错
配置文件:MRP:维护原始计划版本(MRP_ORIGINAL_SCHEDULE_VERSION) 设置为否(原来为空),重启计划管理器、MRP 管理器
-
请求"装入程序工作流程"报错
ORA-26018 Column INVENTORY_LOT_NUMBER in table MRP.MRP_INVENTROY_LOTS# does not exist
原因: sql*loader使用直接导入 direct=true
措施: 更改配置文件 MRP:使用直接装入选项(MRP_DIRECT_LOAD),置为否或空
-
CSD:默认物料 WIP 供应类型
BOM组件创建时的默认供应类型
PO
-
RCV:处理模式
此选项指明在保存对接收事务处理所做的工作之后使用的处理模式:
- 联机: 直接调用“接收事务处理程序”。
- 立即: 将事务处理传送至接口表,并为自上一次保存所做的工作之后输入的事务处理组调用“接收事务处理处理程序”。
- 批: 将事务处理传送至接口表(“接收事务处理处理程序”在下一次运行时将从接口表中挑选这些事务处理)
并发管理器
并发管理机制
https://blog.csdn.net/pan_tian/article/details/42967585
查看他人请求
个性化
作用 | 触发器 | 设置 |
---|---|---|
查看所有请求 | NEW-FORM | PARAMETER.MODE=SYS |
查看输出 | NEW-RECORD | JOBS.VIEW_REPORT ENABLE |
XML诊断 | NEW-BLOCK | HELP.VIEW_XML ENABLE |
启动失败
E-Business Suite Concurrent Manager (Internal Manager) will not start. The Administer Concurrent Manager form shows the Internal Concurrent Manager at Actual 1 and Target 0 processes and Pending requests even for SHUTDOWN.
#Here are Workaround steps until the bug is fixed:
# 1. Issue ps -efw|grep LIB , you should see one or two process similar to below
oracle 26033 26028 0 01:26 ? 00:00:10 FNDLIBR
oracle 26320 1 0 01:26 ? 00:00:00 PALIBR
# 2. Kill them using kill -9
kill -9 26320
kill -9 26033
# 3. Start the concurrent manager:
# 3.1. Source E business suite Run Environment
. /u01/install/APPS/EBSapps.env run
# 3.2. $ADMIN_SCRIPTS_HOME/adcmctl.sh start
(11i):$COMMON_TOP/admin/scripts/adcmctl.sh start apps/apps
:<<!
注:PS是LINUX下最常用的也是非常强大的进程查看命令
-e 显示所有进程。
-f 全格式。
ps -e 列出程序时,显示每个程序所使用的环境变量。
ps -f 用ASCII字符显示树状结构,表达程序间的相互关系
!
OPP
修改内存
-- 查看&修改OPP(Output Post Processor)并发管理器内存
select DEVELOPER_PARAMETERS
from FND_CP_SERVICES
where SERVICE_ID = (select MANAGER_TYPE
from FND_CONCURRENT_QUEUES
where CONCURRENT_QUEUE_NAME = 'FNDCPOPP');
-- J:oracle.apps.fnd.cp.gsf.GSMServiceController:-mx512m
-- 即JVM最大为512M
-- 修改JVM最大值到2048M:
update FND_CP_SERVICES
set DEVELOPER_PARAMETERS ='J:oracle.apps.fnd.cp.gsf.GSMServiceController:-mx2048m'
where SERVICE_ID = (select MANAGER_TYPE
from FND_CONCURRENT_QUEUES
where CONCURRENT_QUEUE_NAME = 'FNDCPOPP');
ORA-00600: kqludp2
参考Doc ID 2327255.1(Reports are Failing with APPS.FND_CP_OPP_IPC ORA-00600)
-
Shutdown the managers.
-
Kill the FNDLIBR processes at the OS level.
-
Run the Recovery Wizard from Concurrent Processing - Command-Line Utility OR Recovery Wizard (Doc ID 134007.1).
-
Shutdown the remaining application services.
-
Run the following SQL files logging into application server as user applmgr:
sqlplus system/<system password> SQL> @ $FND_TOP/patch/115/sql/afopp001.sql Parameter1: SYSTEM Parameter2: <system password> SQL> @ $FND_TOP/patch/115/sql/afopp002.sql Parameter1: APPLSYS Parameter2: <applsys password>
-
Start all the application services
不兼容
设置请求不兼容
范围:
-
集:对请求集中,该请求及其带出的子请求都不兼容;
-
程序:仅对该并发请求不兼容
类型:
- 全局:对所有该请求或子集不兼容
- 域:同一冲突域的请求不兼容

冲突域取值顺序
-
请求参数
-
配置文件 并发:冲突域
定义位置:
-
“标准”域:所有请求的默认值
Web Service
SOAP/REST
部署过程
#验证(生成ildt文件)
$IAS_ORACLE_HOME/perl/bin/perl $FND_TOP/bin/irep_parser.pl -g -v -username=sysadmin cux:patch/sql:CUX_PA_AGREE_MERGE_NEW_WS_PKG.pls:12.0.3=CUX_PA_AGREE_MERGE_NEW_WS_PKG.pls
#上传
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/wfirep.lct CUX_PA_AGREE_MERGE_NEW_WS_PKG_pls.ildt
ISG Rest配置
修改$INST_TOP/soa/isgagent.properties文件
Property | 说明 |
---|---|
Service部署文件所在目录如:(文件中有默认目录,可以自行修改) TEST.ISG_TEMP_DIRECTORY_LOCATION=<ISG_TEMP>---echo $CUX_TOP/soa/ 需要获取到绝对路径 | |
启用ISG的LOG日志,在REST没有SOA MONITOR支持下,这显得尤为重要;日志目录在ISG_TEMP_DIRECTORY_LOCATION属性路径下;(系统稳定可以不打印日志) |
文件路径
- WADL路径
$NE_BASE/inst/[INST_NAME]/soa/PLSQL - 日志路径
12.1 EBS_DOMAIN_HOME/servers/oafm_server1/logs
删除WS
--- 删除function 和 parameters
SELECT *
FROM fnd_form_functions t
WHERE t.function_name LIKE '%CUX_FND_USER_NAME%';
SELECT *
FROM fnd_parameters t
WHERE t.function_id = 50552;
DELETE fnd_parameters t
WHERE t.function_id IN
(SELECT ff.function_id
FROM fnd_form_functions ff
WHERE ff.function_name LIKE '%CUX_FND_USER_NAME%');
DELETE fnd_form_functions t
WHERE t.function_name LIKE '%CUX_FND_USER_NAME%';
--- 删除irep
SELECT t.class_id
,t.irep_name
,t.*
FROM fnd_irep_classes t
WHERE t.irep_name = 'CUX_FND_USER_NAME';
SELECT *
FROM fnd_irep_classes_tl t
WHERE t.class_id = 4703;
DELETE fnd_irep_classes_tl t
WHERE t.class_id IN
(SELECT fic.class_id
FROM fnd_irep_classes fic
WHERE fic.irep_name = 'CUX_FND_USER_NAME');
DELETE fnd_irep_classes t
WHERE t.irep_name = 'CUX_FND_USER_NAME';
问题解决
双节点
其中一个节点报ACL等问题

could not be authenticated
2019-03-21 16:47:55,724 ERROR weaver.hdty.action.CallOracelService - 接口调用异常:[The security token could not be authenticated or authorized]
适用于R12.1
修改 $INST_TOP/ora/10.1.3/j2ee/ofam/config/system-janz-data.xml 中授权人(ASADMIN)的密码(标签
HTTP 404
EBS开发好的WebService供外部调用时,报错404
-
ASADMIN用户曾经失效,系统登录不了,先后台更新失效日期为空,再次调用依然报错
-
重启物理机,重启系统,ASADMIN用户登录报未知异常
-
SYSADMIN用户登录,在用户管理指责下,填写ASADMIN用户失效日期(大于当前系统时间)并应用,ASADMIN用户得以登录
-
登录ASADMIN后,显示无可用职责,返回SYSADMIN用户,加上职责的失效日期(大于系统时间)后,可显示职责
-
查询该WebService,页顶显示警告 Service Provider Access is not available 且 WSDL链接不可点
-
点击重新发布,报错:
oracle.apps.fnd.soa.util.SOAException: SystemError: null Error while sending message to server
遍寻资料,找到ID 1572272.1, 说是参数 s_soaprovider_user 未设置为ASADMIN
-
切换系统管理员职责,打开功能:
-
找到auto config
-
点开后,编辑应用层参数:
-
选择system页签,全部展开,查找 s_soaprovider_user:
-
当时发现,这里就是ASADMIN,不管了,再次AutoConfig一次
cd $ADMIN_SCRIPTS_HOME
./adautocfg.sh
第一次运行时报错,查看日志发现是 apps 用户被锁,解锁后,重新配置一次,无错。
重启oafm,再次进入系统发现,页顶无警告,重新发布也成功了,至此可以正常访问WebService
数字或者值错误
webservice推送,报文数据过大,采用clob类型,报错数字或者值错误

日志路径
R12.2应用
类型 | 位置 |
---|---|
adop | $ADOP_LOG_HOME(/u01/test/app/fs_ne/EBSapps/log/adop) |
LOG_HOME | $LOG_HOME(/u01/test/app/fs1/inst/apps/TEST_apptest/logs) |
ADMIN脚本 | $LOG_HOME/appl/admin/log |
ISG配置 | $INST_TOP/soa/isgagent.properties |
ISG部署文件 | ISG配置中的$ISG_TEMP_DIRECTORY_LOCATION/ |
ISG日志 | ISG配置中的 |
FNDLOAD
#语法:
FNDLOAD logon 0 Y mode configfile datafile [ entity [ param ... ] ]
:<<!
logon : EBS用户名/密码[$TNS连接别名]
mode : UPLOAD 或 DOWNLOAD
configfile: 配置文件路径,根据同步对象的不同需要选择不同的配置文件。
datafile : 数据文件
entity : 条目名称, 或者上载时的所有相关值
param : 参数格式为 NAME=VALUE
!
# 中文环境变量:
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.UTF8" #ZHS16GBK
export NLS_LANG="American_America.AL32UTF8"
# 1. 并发程序
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct CUXARBLA.ldt PROGRAM APPLICATION_SHORT_NAME=CUX CONCURRENT_PROGRAM_NAME=CUXARBLA
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct CUXARBLA.ldt
# 2. 表单
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct CUXARFRM.ldt FORM FORM_APP_SHORT_NAME=CUX FORM_NAME=CUXARFRM
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afsload.lct CUXARFRM.ldt
# 3. 功能
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct CUXARFUC.ldt FUNCTION FUNC_APP_SHORT_NAME=CUX FUNCTION_NAME=CUXARFUC
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afsload.lct CUXARFUC.ldt
# 4. 菜单
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afsload.lct CUXALMENU.ldt MENU MENU_NAME=CUXALMENU
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afsload.lct CUXALMENU.ldt
# 5. 值集
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct CUX_CUSTOMER_NAME.ldt VALUE_SET FLEX_VALUE_SET_NAME=CUX_CUSTOMER_NAME
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct CUX_CUSTOMER_NAME.ldt
# 6. 键弹性域
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct CUX_ACC_KF.ldt KEY_FLEX APPLICATION_SHORT_NAME=CUX D_FLEX_CODE=CUX_ACC_KF
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct CUX_ACC_KF.ldt
# 7. 描述性弹性域
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct CUX_ORDER_HEADER.ldt DESC_FLEX APPLICATION_SHORT_NAME=CUX DESCRIPTIVE_FLEXFIELD_NAME=CUX_ORDER_HEADER
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct CUX_ORDER_HEADER.ldt
# 8. 快码
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/aflvmlu.lct CUX_ITEM_TYPE.ldt FND_LOOKUP_TYPE APPLICATION_SHORT_NAME=CUX LOOKUP_TYPE=CUX_ITEM_TYPE
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/aflvmlu.lct CUX_ITEM_TYPE.ldt
# 9. 请求集
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct CUX_REQUES_SET.ldt REQ_SET APPLICATION_SHORT_NAME=CUX REQUEST_SET_NAME= CUX_REQUES_SET
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct DFSCNARBKSTMTRS_RS_LINK.ldt REQ_SET_LINKS APPLICATION_SHORT_NAME=DRES REQUEST_SET_NAME=DFSCNARBKSTMTRS
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct CUX_REQUES_SET.ldt
# 10. 请求组
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.lct CUX_PAYROLL_APPR.ldt REQUEST_GROUP APPLICATION_SHORT_NAME=CUX REQUEST_GROUP_NAME=CUX_PAYROLL_APPR
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpreqg.lct CUX_PAYROLL_APPR.ldt
# 11. 消息
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afmdmsg.lct CUX_CST_UPDATE.ldt FND_NEW_MESSAGES APPLICATION_SHORT_NAME=CUX MESSAGE_NAME=CUX_CST_UPDATE
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afmdmsg.lct CUX_CST_UPDATE.ldt
# 12. 预制文件
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscprof.lct CUX_DEBUG_MODE.ldt PROFILE APPLICATION_SHORT_NAME=CUX PROFILE_NAME=CUX_DEBUG_MODE
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afscprof.lct CUX_DEBUG_MODE.ldt
# 13. 职责-需要先load该职责的菜单
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afscursp.lct CUX_AP_SUPER_USER.ldt FND_RESPONSIBILITY RESP_KEY=CUX_AP_SUPER_USER
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afscursp.lct CUX_AP_SUPER_USER.ldt
# 14. 个性化
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK;export NLS_LANG
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct “CUX_RCV_RCVTXERT.lct FND_FORM_CUSTOM_RULES function_name=RCV_RCVTXERT
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/affrmcus.lct CUX_RCV_RCVTXERT.lct
# 15. 附件
FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afattach.lct CUX_ATTACHMENT.ldt FND_ATTACHMENT_FUNCTIONS FUNCTION_NAME=FUNCTION_NAME
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afattach.lct CUX_ATTACHMENT.ldt
# 16.1 XML数据定义
FNDLOAD apps/apps 0 Y DOWNLOAD $XDO_TOP/patch/115/import/xdotmpl.lct program_XDO.ldt XDO_DS_DEFINITIONS APPLICATION_SHORT_NAME=CUX DATA_SOURCE_CODE=program
FNDLOAD apps/apps 0 Y UPLOAD $XDO_TOP/patch/115/import/xdotmpl.lct program_XDO.ldt
# 16.2 模板
java oracle.apps.xdo.oa.util.XDOLoader DOWNLOAD \
-DB_USERNAME <db_username> \
-DB_PASSWORD <db_password> \
-JDBC_CONNECTION <jdbc_con_string>($AD_APPS_JDBC_URL) \
-LOB_TYPE <lob_type> \
-APPS_SHORT_NAME <application_short_name> \
-LOB_CODE <lob_code> \
-LANGUAGE <language> \
-TERRITORY <territory> \
-LOG_FILE <log file>
java oracle.apps.xdo.oa.util.XDOLoader UPLOAD -DB_USERNAME apps -DB_PASSWORD apps -JDBC_CONNECTION HostName:SID:Port -LOB_TYPE TEMPLATE -APPS_SHORT_NAME “CUX -LOB_CODE program -LANGUAGE zh -XDO_FILE_TYPE RTF -FILE_NAME program.rtf
# 17. WebADI
# All
FNDLOAD apps/apps 0 Y DOWNLOAD $BNE_TOP/patch/115/import/bneintegrator.lct bneintegrators4.ldt BNE_INTEGRATORS INTEGRATOR_ASN=CUX INTEGRATOR_CODE=GENERAL_23_INTG
FNDLOAD apps/apps 0 Y UPLOAD $BNE_TOP/patch/115/import/bneintegrator.lct bneintegrators4.ldt
# Integrator
FNDLOAD apps/xshx87246788 0 Y DOWNLOAD $BNE_TOP/admin/import/bneint.lct bneint.ldt BNE_INTEGRATORS INTEGRATOR_ASN=HX INTEGRATOR_CODE=GENERAL_208_INTG
FNDLOAD apps/ 0 Y UPLOAD $BNE_TOP/admin/import/bneint.lct bneint.ldt
# Layouts
FNDLOAD apps/xshx87246788 0 Y DOWNLOAD $BNE_TOP/admin/import/bnelay.lct bnelay.ldt BNE_LAYOUTS LAYOUT_ASN=HX LAYOUT_CODE=HXPROJECTRATELAYOUT
FNDLOAD apps/ 0 Y UPLOAD $BNE_TOP/admin/import/bnelay.lct bnelay.ldt
# Mappings
FNDLOAD apps/xshx87246788 0 Y DOWNLOAD $BNE_TOP/admin/import/bnemap.lct bnemap.ldt BNE_MAPPINGS MAPPING_ASN=HX MAPPING_CODE=GENERAL_208_MAP
FNDLOAD apps/ 0 Y UPLOAD $BNE_TOP/admin/import/bnemap.lct bnemap.ldt
# Contents
FNDLOAD apps/xshx87246788 0 Y DOWNLOAD $BNE_TOP/admin/import/bnecont.lct bnecont.ldt BNE_CONTENTS CONTENT_ASN=HX CONTENT_CODE=GENERAL_208_CNT
FNDLOAD apps/ 0 Y UPLOAD $BNE_TOP/admin/import/bnecont.lct bnecont.ldt
# Parameter List
FNDLOAD apps/xshx87246788 0 Y DOWNLOAD $BNE_TOP/admin/import/bneparamlist.lct bneparamlist.ldt BNE_PARAM_LISTS INTEGRATOR_ASN=HX INTEGRATOR_CODE=GENERAL_208_INTG
FNDLOAD apps/ 0 Y UPLOAD $BNE_TOP/admin/import/bneparamlist.lct bneparamlist.ldt
# Security
FNDLOAD apps/xshx87246788 0 Y DOWNLOAD $BNE_TOP/admin/import/bnesecurity.lct bnesecurity.ldt BNE_SECURED_OBJECTS SECURED_OBJECT_ASN=HX SECURED_OBJECT_CODE=GENERAL_208_INTG
FNDLOAD apps/ 0 Y UPLOAD $BNE_TOP/admin/import/bnesecurity.lct bnesecurity.ldt
# 18. Printer Styles
FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcppstl.lct file_name.ldt STYLE. PRINTER_STYLE_NAME=printer style. name
# 19. 电子元表格:
FNDLOAD apps/apps 0 Y DOWNLOAD $JTF_TOP/patch/115/import/jtfgrid.lct GRID_CUX_WIP_CHANGE_IMPORT_V_W.ldt JTF_GRID_DATASOURCES GRID_DATASOURCE_NAME="CUX_WIP_CHANGE_IMPORT_V_W"
FNDLOAD apps/apps 0 Y UPLOAD $JTF_TOP/patch/115/import/jtfgrid.lct GRID_CUX_WIP_CHANGE_IMPORT_V_W.ldt
# 20. 表/视图
java oracle.apps.fnd.odf2.FndXdfGen apps_schema=apps apps_pwd=apps jdbc_protocol=thin jdbc_conn_string=erptest.longcheer.com:1531:TEST object_name=CUX_GL_CFRPT_CF_ITEM_TMP.xdf xsl_directory=$FND_TOP/patch/115/xdf/xsl owner_app_shortname=CUX object_type=table
# $FND_TOP/patch/115/xdf
adjava oracle.apps.fnd.odf2.FndXdfCmp APPS APPS APPS APPS thin erptest.longcheer.com:1531:TEST view CUX_GL_CFRPT_MAP_LINES_VT.xdf $FND_TOP/patch/115/xdf/xsl
adjava -mx512m -nojit oracle.apps.fnd.odf2.FndXdfCmp <Oracle_Schema> <Oracle_Password> \
<apps_schema> <apps_password> <jdbc protocol> <JDBC_Connect_String> <Object Type> \
<full path to xdf file> <full path of $FND_TOP/patch/115/xdf/xsl>
# 21. 工作流
WFLOAD apps/apps 0 Y UPLOAD/UPGRADE/FORCE /home/appldev/install/HDSP0202.wft
WFLOAD apps/apps 0 Y DOWNLOAD GLBATCH_ZHS.wft GLBATCH
登录配置
-
Internet Explorer 已对此页面进行了修改,以帮助阻止跨站脚本
禁用 XSS筛选 -
弹出两次java警告
修改:
Oracle Support
APP
- ID 2201680.1 The External Bank Account Already Exists
- ID 2105049.1 adop fails with "ORA-12516: TNS:listener could not find available handler with matching protocol stack"
- java -Djava.security.egd=[file:///dev/urandom](file:///dev/urandom)
- 12.2 Oracle Assets Additions API https://docs.oracle.com/cd/E26401_01/doc.122/e48755/T293142T471916.htm
DBA
-
Applying the Latest AD and TXK Release Update Packs to Oracle E-Business Suite Release 12.2 (Doc ID 1617461.1)
-
Oracle E-Business Suite Release 12 Critical Patch Update Knowledge Document (July 2019) (文档 ID 2555452.1)
-
ETCC patch 17537119
-
Enabling TLS in Oracle E-Business Suite Release 12.2 (Doc ID 1367293.1)
-
Overview of Using Java with Oracle E-Business Suite Release 12.x (Doc ID 418664.1)
-
Using the Latest JDK 7.0 Update with Oracle E-Business Suite Release 12.2 (Doc ID 1530033.1)
-
Database Initialization Parameters for Oracle Applications Release 12 (Doc ID 396009.1)
-
Recommended Browsers for Oracle Applications 12 (Document )
-
Guidance for Integrating Custom and Third-Party Products With Oracle E-Business Suite Release 12.2 (Doc ID: 1916149.1)
-
How to Identify Required Oracle JDeveloper Patches For Oracle E-Business Release 12.x or 11i (Doc ID 416708.1)
-
Installing Oracle E-Business Suite Integrated SOA Gateway, Release 12.2 (Doc ID 1311068.1)
-
Alternative Methods to Allow Access to Oracle WebLogic Server Administration Console from Trusted Hosts for Oracle E-Business Suite Release 12.2 (Doc ID 2542826.1)
-
R12.2: Steps to Change the APPS, APPLSYS, and APPS_NE Password Using FNDCPASS or AFPASSWD (Doc ID 1674462.1)
-
How To Change or Reset The WebLogic Administration Password In 12.2 E-Business Suite (Doc ID 1385751.1)
-
Bug 21162325 - RMAN RECOVER TABLE / EXPDP fails with ORA-376 for datafile having INDEX during EXPORT (Doc ID 21162325.8)
-
AutoUpgrade Tool (Doc ID 2485457.1)
-
Database Server Upgrade/Downgrade Compatibility Matrix (Doc ID 551141.1)
-
Interoperability Notes: Oracle E-Business Suite Release 12.2 with Oracle Database 19c (Doc ID 2552181.1)
https://vishnu.ae/oracle/oracle-ebs/upgrade-oracle-ebs-12-2-8-database-to-19-3-19c-part-1/
启用TLS
- 11i ID 123718.1
- 12.1 ID 403537.1
- 12.2 ID 1367293.1
- Which is Better: Forms Servlet or Socket Mode?
https://blogs.oracle.com/stevenchan/which-is-better%3A-forms-servlet-or-socket-mode
JSP
编译
$FND_TOP/patch/115/bin/ojspCompile.pl --compile --flush -s DfscnXmlpViewer06.jsp
资源访问
问题:
- 新建的JSP访问时报错:
原因:
- 这是R12.2.6新加入的安全特性,具体见(Allowed Resources部分):
https://docs.oracle.com/cd/E26401_01/doc.122/e22952/T156458T156461.htm#loadingcustrsrc
解决方法有二:
-
放开资源访问限制(配置文件控制)
- 安全性:允许的资源(FND_SEC_ALLOWED_RESOURCES) => 全部
- 重启OACORE
-
添加白名单(推荐)
$ cd $FND_TOP/secure $ echo "/OA_HTML/JDKtest.jsp" >> custom_servlets.conf $ java oracle.apps.fnd.security.resource.WLDataMigration \ MODE=custom \ INPUT_FILE=custom_servlets.conf \ DBC=$FND_SECURE/$TWO_TASK.dbc ======语法说明 java oracle.apps.fnd.security.resource.WLDataMigration \ MODE=<seed|custom> \ INPUT_FILE=<conf file/webusage file> \ DBC=<path of dbc> \ [PARSE_MODE=<single|recursive>] ======
进入职责:功能管理员 -> 允许的资源 -> 自定义
点击CUSTOM即可查看添加的客制化jsp:
此时可以正常登陆页面:
JWS
$CONTEXT_FILE : s_forms_launch_method
Enable Java Web Start or Java Plug-in.
Possible values:
- browser - use Java Plug-in
- jws - use Java Web Start
类别 | 说明 |
---|---|
Enable Java Web Start / FND_ENABLE_JAVA_WEB_START | Use Java Web Start to launch the Forms application and Java applets. Possible values: Yes - Use Java Web Start No - Use Java Plug-in |
ICX: Forms Launcher /ICX_FORMS_LAUNCHER | The URL for launching the Forms application. Possible values: Site level default: <s_webentryurlprotocol>://<s_webentryhost>.<s_webentrydomain>:<s_active_webport>/forms/frmservlet Java Plug-in: <s_webentryurlprotocol>://<s_webentryhost>.<s_webentrydomain>:<s_active_webport>/forms/frmservlet?config=browserMode Java Web Start: <s_webentryurlprotocol>://<s_webentryhost>.<s_webentrydomain>:<s_active_webport>/forms/frmservlet?config=jws |
---------DBA---------->
DBA常用命令
清除trace
#清除7天前trace
find /trace -mtime +7 -name "*.trc" | xargs rm -f
find /trace -mtime +7 -name "*.trm" | xargs rm -f
Weblogic
#端口:
grep wls_adminport $CONTEXT_FILE
grep s_soa_admin_url $CONTEXT_FILE
grep forms_connect $CONTEXT_FILE socket/servlet
#访问权限
cat $CONTEXT_FILE|grep s_wls_admin_console_access_nodes
#版本:
$ cd $FMW_HOME/wlserver_10.3/server/lib
$ java -cp weblogic.jar weblogic.version
#或
grep -i "weblogic server" $FMW_HOME/registry.xml
oacore
#查看OACORE状态(12.2)
cd $ADMIN_SCRIPTS_HOME
admanagedsrvctl.sh status oacore_server1 –nopromptmsg
#查看oacore日志信息:
tail -n 200 $EBS_DOMAIN_HOME/servers/oacore_server1/logs/oacore_server1.out
查看版本
#文件版本
$ strings -a adgrants.sql | grep '$Header'
-- 查看pls文件版本
$ strings -a aptxdefb.pls | grep -i '$ Header';
/ * $ Header:aptxdefb.pls 120.11 2005/08/04 04:44:25 hongliu ship $ * /
# 查找fmx文件的版本也一样。
strings -a APXINWKB.fmx | grep'$ Header';
Linux
#判断传入参数对应文件是否包含指定内容
function copyErr
{
grep "Compilation errors have occurred" $CGL_TOP/forms/ZHS/$1 >/dev/null
if[ $? -eq 0 ]; then
cp -rp $CGL_TOP/forms/ZHS/$1 /tmp/ERP_2018/err
fi
}
#重命名文件(带日期)
mv $CGL_TOP/forms/ZHS/CUXJEQUERY.fmb $CGL_TOP/forms/ZHS/CUXJEQUERY.fmb.`date +%m%d%H%M`
#查找文件
find /u01/dev/db/12.1.0 -name '*HAND_TXX*' -and -mmin -5 2>/dev/null
find ./ -name "*.fmb" | xargs grep -i "cas_bc_setup"
扩展表空间
运行plsql代码,发现报错:

查询表空间使用情况
SELECT upper(f.tablespace_name) "表空间名",
d.tot_grootte_mb "表空间大小(M)",
d.tot_grootte_mb - f.total_bytes "已使用空间(M)",
to_char(round((d.tot_grootte_mb - f.total_bytes) / d.tot_grootte_mb * 100,
2),
'990.99') "使用比",
f.total_bytes "空闲空间(M)",
f.max_bytes "最大块(M)"
FROM (SELECT tablespace_name,
round(SUM(bytes) / (1024 * 1024), 2) total_bytes,
round(MAX(bytes) / (1024 * 1024), 2) max_bytes
FROM sys.dba_free_space
GROUP BY tablespace_name) f,
(SELECT dd.tablespace_name,
round(SUM(dd.bytes) / (1024 * 1024), 2) tot_grootte_mb
FROM sys.dba_data_files dd
GROUP BY dd.tablespace_name) d
WHERE d.tablespace_name = f.tablespace_name
AND f.tablespace_name = 'APPS_TS_SUMMARY'
ORDER BY 4 DESC;
-- 如果这里查不到表空间的使用情况,说明有可能表空间已经满了 使用如下sql查询
SELECT t.bytes,
t.maxbytes
FROM dba_data_files t
WHERE t.tablespace_name = 'APPS_TS_SUMMARY';
扩展表空间
-- 1. 增加表空间数据文件
-- 1.1 得到路径
SELECT t.file_name
FROM dba_data_files t
WHERE t.tablespace_name = 'APPS_TS_SUMMARY';
-- 1.2 创建数据文件
alter tablespace APPS_TS_SUMMARY add datafile
'/db/db/apps_st/data/a_summ02.dbf' size 4000M autoextend off;
/*
数据文件自动扩展的好处
1)不会出现因为没有剩余空间可以利用到数据无法写入
2)尽量减少人为的维护
3)可以用于重要级别不是很大的数据库中,如测试数据库等
数据文件自动扩展的弊端
1)如果任其扩大,在数据量不断变大的过程中会导致某个数据文件异常的大
2)没有人管理的数据库是非常危险的
*/
-- 通过修改SEC_D的数据文件为自动扩展达到表空间SEC_D为自动扩展的目的
alter database datafile '/.../sec_d01.dbf' autoextend on[off];
-- 查询是否自动扩展
SELECT tablespace_name,
file_name,
autoextensible
FROM dba_data_files
WHERE tablespace_name = 'SEC_D';
-- 2. 直接修改表空间大小
ALTER DATABASE datafile '/.../a_summ01.dbf' autoextend ON NEXT 50m maxsize 3000m;
归档日志清理
1、切换到ora用户
sudo su - oradev
2、查看磁盘空间
df -h
3、进入sysdba
sqlplus / as sysdba
4、查看归档是否打开
archive log list
5、切换到ora然后进入rman命令
rman target /
6、删除所有的归档日志
RMAN>delete archivelog all;
7、检查一些无用的archivelog
RMAN> crosscheck archivelog all;
8、删除过期的归档
RMAN> delete expired archivelog all;
9、删除截止到前一天的所有archivelog
delete archivelog until time 'sysdate-1';
10、退出
exit
端口修改
数据库端口
- 查看当前监听端口信息 lsnrctl status
- 关掉监听 lsnrctl stop
- 修改配置文件 lintener.ora 与 tnsnames.ora,将相应端口号改掉
- 修改数据库初始化参数
alter system set local_listener="(address=(protocol=tcp)(host=oracle12c)(port=11521))"; - 重启监听与数据库
应用端口
登录端口
-
修改CONTEXT_FILE文件
[appluat@szts1000 admin]$grep 8080 $CONTEXT_FILE <“chronosURL oa_var=“s_chronosURL”>http://szts1000.domain.com:8080/oracle_smp_chronos/oracle_smp_chronos_sdk.gif</chronosURL”> <“EndUserMonitoringURL oa_var=“s_endUserMonitoringURL”>http://szts1000.domain:8080/oracle_smp_chronos/oracle_smp_chronos_sdk.gif</EndUserMonitoringURL”> <“externURL oa_var=“s_external_url”>http://szts1000.domain.com:8080</externURL”> <“login_page oa_var=“s_login_page”>http://szts1000.domain.com:8080/OA_HTML/AppsLogin</login_page”> <“httplistenparameter oa_var=“s_http_listen_parameter”>8080</httplistenparameter”> <“web_port oa_var=“s_webport” oa_type=“PORT” base=“8000” step=“1” range=”-1" label=“Web Listener Port”>8080</web_port"> <“activewebport oa_var=“s_active_webport” oa_type=“DUP_PORT” base=“8000” step=“1” range=”-1" label=“Active Web Port”>8080</activewebport">
-
自动配置
ADMIN_SCRIPTS_HOME$ ./adautocfg.sh
-
重新登录
Weblogic 端口
方法一:通过weblogic控制台修改
在环境--服务器节点中点击你要修改的服务器的端口的名称(如下图:AdminServer(管理))
方法二:修改配置文件
在创建的weblogic的域中找到config\config.xml文件。(如:xxxx\user_projects\domains\base_domain\config\config.xml
在config.xml文件中找到
<server>
<name>AdminServer</name>
<ssl>
<enabled>false</enabled>
</ssl>
<listen-port>7005</listen-port>
<listen-address>localhost</listen-address>
<data-source>
<rmi-jdbc-security xsi:nil="true"></rmi-jdbc-security>
</data-source>
</server>
SQLPLUS
Oracle挂起时连接
说明:
- 很多情况下,Oracle hang导致sqlplus无法连接,从而无法获得Oracle系统和进程状态,使得定位问题缺少强有力的依据。
所幸的是Oracle 10g推出了sqlplus -prelim选项,在Oracle挂起时依然能使用sqlplus,从而能获得数据库状态
使用方法:
sqlplus -prelim / as sysdba
oradebug setmypid
oradebug unlimit;
oradebug dump systemstate 10
-- 但是需要注意的是,在Oracle 10.2.0.1中,使用如上方法会出现一个错误:
$ sqlplus -prelim / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Oct 25 09:38:14 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
-- 在prelim模式下,不可以查询数据字典,但可以关闭数据库
SQL> select status from v$instance;
select status from v$instance
*
ERROR at line 1:
ORA-01012: not logged on
SQL> shutdown abort
ORACLE instance shut down.
SQL> oradebug setmypid
Statement processed.
SQL> oradebug unlimit
Statement processed.
SQL> oradebug dump systemstate 10
ORA-03113: end-of-file on communication channel
ORA-24323: value not allowed
-- 此时在alert文件中会记录如下错误提示:
Thu Oct 25 09:38:32 2007
System State dumped to trace file
Thu Oct 25 09:38:32 2007
Errors in file /opt/oracle/admin/test201/udump/test201_ora_1402.trc:
ORA-07445: exception encountered: core dump [kgldmp()+1360] [SIGSEGV] [Address not mapped to object] [0x000000030] [] []
-- 这是由于一个Bug导致的,Bug号为5730231,该Bug在10.2.0.3中修正。
-- 或者dump hanganalyze
SQL> oradebug hanganalyze 3
Hang Analysis in /oracle/app/oracle/admin/ora10g/udump/ora10g_ora_52642.trc
-- 对于rac
SQL> oradebug setmypid
SQL> oradebug setinst all
SQL> oradebug -g def hanganalyze 3
-- 或者dump 进程状态
SQL> oradebug dump processstate 10
Statement processed.
/*
对于9i也有变通的方法使用
-prelim is feature of Sql*Plus 10g and latter.
So as long you have any Sql*Plus 10g or latter version (ex. from client installation) and a valid net service name to connect to your 9i database you should be able to establish a "backdoor" connection.
You can do the following:*/
$sqlplus -prelim /nolog
and once you are in, just connect to the database using SYSDBA account
SQL> connect sys/password@net_service_name as sysdba
Prelim connection established
SQL> oradebug setmypid
Statement processed.
SQL> oradebug unlimit
Statement processed.
SQL> oradebug dump systemstate 266
Statement processed.
-- 来自 <https://blog.csdn.net/zhou1862324/article/details/17248553>
常驻内存





会话视图
gv
开头是本节点的
gvsession多一个字段而已: INST_ID
DBA问题解决
Solais
Distributed Caching System failed to initialize on port
系部分端口被占用,查出后杀掉进程即可(kill -9 xxx)
-bash-3.00# cd /proc
-bash-3.00# for i in *
do
echo ------ process $i ---------
sudo pfiles $i | grep -i "port: 12345"
done
------ process 57781 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57782 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57783 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57784 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57785 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57786 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57789 ---------
peername: AF_INET6 ::ffff:10.15.201.73 port: 12345
------ process 57790 ---------
sockname: AF_INET6 ::ffff:10.15.201.73 port: 12345
sockname: AF_INET6 ::ffff:10.15.201.73 port: 12345
-bash-4.4$ ps -ef |grep 57803
htian 10094 56416 0 03:39:54 pts/4 0:00 grep 57803
oracle 57803 26239 0 Mar 05 ? 28:15 /woapch/app/oracle/R122/fs1/EBSapps/comn/util/jdk/bin/sparcv9/java -DCLIENT_PROCESSID=57803 -Dhttp.proxyHost= -Dhttp.proxyPort= -Dhttp.nonProxyHosts= -Djava.awt.headless=true -server -Xmx384m -XX:NewRatio=2 -XX:+UseSerialGC -Doracle.apps.fnd.common.Pool.leak.mode=stderr:off -verbose:gc -Ddbcfile=/inst_top/R122/fs1/inst/apps/woapch_housva441/appl/fnd/12.0.0/secure/woapch.dbc -Dcpid=897001 -Dconc_queue_id=1123 -Dqueue_appl_id=0 -Dlogfile=/woapch/app/oracle/R122/fs_ne/inst/woapch_housva441/logs/appl/conc/log/FNDCPGSC897001.txt -DLONG_RUNNING_JVM=true -DEBS_HOSTNAME=housva441 -DOVERRIDE_DBC=true -DFND_JDBC_BUFFER_MIN=1 -DFND_JDBC_BUFFER_MAX=2 oracle.apps.fnd.cp.gsm.GSMSvcComponentContainer
19C
启动数据库
启动CDB
-- 与传统数据库(12c之前)一样的操作
$ sqlplus / as sysdba
SQL> startup;
SQL> select name,open_mode,cdb from gv$database;
NAME OPEN_MODE CDB
--------- -------------------- ---
CDB2 READ WRITE YES <------
SQL> show con_id con_name
CON_ID
------------------------------
1
CON_NAME
------------------------------
CDB$ROOT <-----
启动PDB
From CDB
SQL> col name for a30
SQL> select name,open_mode,con_id,dbid from gv$containers;
NAME OPEN_MODE CON_ID DBID
------------------------------ ---------- ---------- ----------
CDB$ROOT READ WRITE 1 680230459
PDB$SEED READ ONLY 2 2993936271
PDB1 MOUNTED 3 627484885
PDB2 MOUNTED 4 891811039
/* 语法:
ALTER PLUGGABLE DATABASE <pdd-name-clause> OPEN READ WRITE [RESTRICTED][FORCE];
ALTER PLUGGABLE DATABASE <pdd-name-clause> OPEN READ ONLY [RESTRICTED] [FORCE];
ALTER PLUGGABLE DATABASE <pdd-name-clause> OPEN UPGRADE [RESTRICTED];
ALTER PLUGGABLE DATABASE <pdd-name-clause> CLOSE [IMMEDIATE]; -- 关闭
<pdd-name-clause>表示的是多个PDB,如果有多个,用逗号分开。 也可以使用ALL或者ALL EXCEPT关键字来替代。
ALL:表示所有的PDBS。
ALL EXCEPT 表示需要排除的PDBS。
如:
ALTER PLUGGABLE DATABASE pdb1, pdb2 OPEN READ ONLY FORCE;
ALTER PLUGGABLE DATABASE ALL OPEN;
ALTER PLUGGABLE DATABASE ALL EXCEPT pdb1 OPEN;
ALTER PLUGGABLE DATABASE ALL CLOSE IMMEDIATE;
ALTER PLUGGABLE DATABASE ALL EXCEPT pdb1 CLOSE IMMEDIATE;
*/
SQL> ALTER PLUGGABLE DATABASE PDB1 OPEN;
Pluggable database altered.
SQL> select name,open_mode,con_id,dbid from gv$containers;
NAME OPEN_MODE CON_ID DBID
------------------------------ ---------- ---------- ----------
CDB$ROOT READ WRITE 1 680230459
PDB$SEED READ ONLY 2 2993936271
PDB1 READ WRITE 3 627484885 <----
PDB2 MOUNTED 4 891811039
From PDB
-- 切换到PDB
SQL> alter session set container=PDB2; <----
Session altered.
SQL> show con_name
CON_NAME
------------------------------
PDB2
-- 查看状态
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
4 PDB2 MOUNTED <-----
-- 此处开始启动的方式有三种:
SQL> startup;
Pluggable Database opened.
-- OR --
SQL> ALTER DATABASE OPEN;
Database altered.
-- OR --
/* 语法
ALTER PLUGGABLE DATABASE OPEN READ WRITE [RESTRICTED] [FORCE];
ALTER PLUGGABLE DATABASE OPEN READ ONLY [RESTRICTED] [FORCE];
ALTER PLUGGABLE DATABASE OPEN UPGRADE [RESTRICTED];
ALTER PLUGGABLE DATABASE CLOSE [IMMEDIATE];
*/
SQL> ALTER PLUGGABLE DATABASE OPEN;
Pluggable database altered.
-- 查看状态
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
4 PDB2 READ WRITE NO
启动所有PDB
-- Switch to CDB from PDB
SQL> conn / as sysdba
Connected.
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT <---
SQL> ALTER PLUGGABLE DATABASE ALL OPEN;
Pluggable database altered.
关闭数据库
关闭PDB
From CDB
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> SHOW PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 READ WRITE NO
SQL> ALTER PLUGGABLE DATABASE PDB1 CLOSE IMMEDIATE;
Pluggable database altered.
SQL> SHOW PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 MOUNTED <-----
From PDB
-- Switch to PDB from CDB
SQL> ALTER SESSION SET CONTAINER=PDB2; <----
Session altered.
SQL> SHOW CON_NAME
CON_NAME
------------------------------
PDB2 <-----
SQL>
SQL> SHOW PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
4 PDB2 READ WRITE NO <------ R/W
SQL> ALTER PLUGGABLE DATABASE CLOSE IMMEDIATE;
Pluggable database altered.
SQL>
--- OR ---
SQL> SHUT IMMEDIATE; -- PLEASE DO NOT RUN FROM CDB, IT WILL CLOSE CDB AND ALL PDBs inside CDB
Pluggable Database closed.
SQL> SHOW PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
4 PDB2 MOUNTED <----
关闭所有PDB
-- Switch to CDB from PDB
SQL> CONN / AS SYSDBA
Connected.
SQL> SHOW CON_NAME
CON_NAME
------------------------------
CDB$ROOT <----
SQL> SHOW PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 MOUNTED
4 PDB2 MOUNTED
5 PDB3 READ WRITE NO
6 PDB4 READ WRITE NO
SQL> ALTER PLUGGABLE DATABASE ALL CLOSE IMMEDIATE;
Pluggable database altered.
SQL> SHOW PDBS;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 MOUNTED
4 PDB2 MOUNTED
5 PDB3 MOUNTED
6 PDB4 MOUNTED
关闭CDB
PLEASE DO NOT run SHUT IMMEDIATE OR ALTER DATABASE CLOSE command from CDB, it will shutdown ALL PDBs,PDB
SQL> select name,open_mode,con_id,dbid from v$containers;
NAME OPEN_MODE CON_ID DBID
------------------------------ ---------- ---------- ----------
CDB$ROOT READ WRITE 1 680230459 <-- R/W
PDB$SEED READ ONLY 2 2993936271
PDB1 MOUNTED 3 627484885
PDB2 MOUNTED 4 891811039
PDB3 MOUNTED 5 424568091
PDB4 MOUNTED 6 2306285303
SQL> SHOW CON_NAME
CON_NAME
------------------------------
CDB$ROOT
SQL> SHUT IMMEDIATE;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> !ps -ef | grep pmon
oracle 13612 12669 0 19:00 pts/0 00:00:00 /bin/bash -c ps -ef | grep pmon
oracle 13614 13612 0 19:00 pts/0 00:00:00 grep pmon
SQL> col name for a30
SQL> select name,open_mode,con_id,dbid from v$containers;
NAME OPEN_MODE CON_ID DBID
------------------------------ ---------- ---------- ----------
CDB$ROOT READ WRITE 1 680230459
PDB$SEED READ ONLY 2 2993936271
PDB1 READ WRITE 3 627484885
PDB2 READ WRITE 4 891811039
PDB3 READ WRITE 5 424568091
PDB4 READ WRITE 6 2306285303
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT <----
SQL> ALTER DATABASE CLOSE IMMEDIATE;
Database altered.
SQL> select name,open_mode,con_id,dbid from v$containers;
NAME OPEN_MODE CON_ID DBID
------------------------------ ---------- ---------- ----------
CDB$ROOT MOUNTED 1 680230459
PDB$SEED MOUNTED 2 2993936271
PDB1 MOUNTED 3 627484885
PDB2 MOUNTED 4 891811039
PDB3 MOUNTED 5 424568091
PDB4 MOUNTED 6 2306285303
SQL> shut immediate;
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> !ps -ef | grep pmon
oracle 14495 12669 0 19:16 pts/0 00:00:00 /bin/bash -c ps -ef | grep pmon
oracle 14497 14495 0 19:16 pts/0 00:00:00 grep pmon
PDB自启动
记录状态
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT <----
-- 记录打开后的PDB状态
SQL> alter pluggable database PDB1 save state;
Pluggable database altered.
-- 查询记录,已为OPEN,下次重新启动CDB时,将自动启动PDB1
SQL> select con_name, state from dba_pdb_saved_states;
CON_NAME STATE
----------------------- --------------
PDB1 OPEN
-- 若要取消此设定,执行:
SQL> alter pluggable database PDB1 discard state;
触发器
SQL>show con_name
CON_NAME
------------------------------
PDB1
SQL> alter session set container=CDB$ROOT;
Session altered.
SQL>CREATE OR REPLACE TRIGGER open_pdbs
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN';
END open_pdbs;
/
Triggercreated
本文作者:水木夏
本文链接:https://www.cnblogs.com/star-tong/p/17563644.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步