Feed aggregator

ORA-06565: SET ROLE in LOGON TRIGGER

Tom Kyte - Sun, 2017-10-29 00:06
We have a trigger CREATE OR REPLACE TRIGGER TRG_AFTER_LOGON AFTER LOGON ON DATABASE BEGIN LogonCheck; END; / with CREATE OR REPLACE PROCEDURE LogonCheck AUTHID current_user AS BEGIN EXECUTE IMMEDIATE 'SET ROLE NONE'; END; / T...
Categories: DBA Blogs

Local unique indexes on partitioned tables

Tom Kyte - Sun, 2017-10-29 00:06
Tom, I'm wondering why Oracle requires the partitioning key on a local unique index. I realize that internally Oracle doesn't want to have to scan all local index segments to check the constraint. But why should the partitioning key need to be o...
Categories: DBA Blogs

12c release 1 dump questions confusions

Tom Kyte - Sun, 2017-10-29 00:06
Greetings, Every time i submit a question, i get a sense of confidence that i will surely get a valid and updated answer from the world's most interactive and supportive forum. The group is a ORACLE DICTIONARY for me. I thank you from bottom of...
Categories: DBA Blogs

nVision Performance Tuning: 4. Partitioning of Ledger, Ledger Budget, and Summary Ledger Tables

David Kurtz - Sat, 2017-10-28 14:41
This blog post is part of a series that discusses how to get optimal performance from PeopleSoft nVision reporting as used in General Ledger.

Note: Partitioning is a licenced option in Oracle RDBMS, and is only available on Enterprise Edition.

nVision queries always contain single value predicates on LEDGER and FISCAL_YEAR.  They will also always have either single value predicate or a range predicate on ACCOUNTING_PERIOD.  Therefore, partitioning the ledger tables on these columns is an effective way to cut down the data to be processed by the query as early as possible.
SELECT … SUM(A.POSTED_BASE_AMT) 
FROM PS_LEDGER A, …
WHERE A.LEDGER='ACTUALS'
AND A.FISCAL_YEAR=2015
AND A.ACCOUNTING_PERIOD BETWEEN 1 AND 11

I usually partition the ledger, ledger budget and summary ledger tables on the combination of FISCAL_YEAR and ACCOUNTING_PERIOD in a single range.
Most customers have monthly accounting periods, in which case I create 14 partitions for the current and previous fiscal years, but only have a single partition for each previous fiscal years.
  • One for each of the 12 accounting periods
  • One for period 0 (brought forward)
  • One for periods 998 and 999 (carry forward and adjustments)
I have seen one system with daily accounting periods that also had 14 partitions per year, in groups of 30 days.  This also worked very well.
I would then consider sub-partitioning on another column depending on the nature of data and the processing.  For example:
  • LEDGER is often a good candidate.  In which case, I would create one list sub-partition for each of the larger ledgers and have a default list partition for the rest.
  • On one a global system with various regional, but locally overnight, batch processing windows ledger was list sub-partitioned on BUSINESS_UNIT. A list partition was proposed for each region containing the top business units for that region.  This not only helped regional reporting but also minimised inter-regional contention.
  • It would even be possible to vary the sub-partitioning in different fiscal years if a change occurred in the business.
This example shows part of the DDL used to create the LEDGER table.
  • There is one range partition for the whole of the fiscal year 2015 because it is historical and rarely queried, and then not usually by a single period.
  • Monthly partitioning is used from the previous fiscal year, 2016, onwards.
  • Historical partitions are created without any reservation for free space as they are closed and won't be updated any further.  The could also be compressed.
CREATE TABLE sysadm.gfc_ledger
(...)
TABLESPACE GLLARGE
PCTFREE 10 PCTUSED 80
PARTITION BY RANGE(FISCAL_YEAR,ACCOUNTING_PERIOD)
SUBPARTITION BY LIST (LEDGER)
(PARTITION ledger_2014 VALUES LESS THAN (2015,0) PCTFREE 0 …
(SUBPARTITION ledger_2014_actuals VALUES ('ACTUALS')

,SUBPARTITION ledger_2014_z_others VALUES (DEFAULT)
)
,PARTITION ledger_2015_bf VALUES LESS THAN (2015,1) PCTFREE 0…
(SUBPARTITION ledger_2015_bf_actuals VALUES ('ACTUALS')

,SUBPARTITION ledger_2015_bf_z_others VALUES (DEFAULT)
)
,PARTITION ledger_2015_01 VALUES LESS THAN (2015,2) PCTFREE 0 …
(SUBPARTITION ledger_2015_01_actuals VALUES ('ACTUALS')

,SUBPARTITION ledger_2015_01_z_others VALUES (DEFAULT)
)

,PARTITION ledger_2015_12 VALUES LESS THAN (2015,13) PCTFREE 0 …
(SUBPARTITION ledger_2015_12_actuals VALUES ('ACTUALS')

,SUBPARTITION ledger_2015_12_z_others VALUES (DEFAULT)
)
,PARTITION ledger_2015_cf VALUES LESS THAN (2016,0) PCTFREE 0 …
(SUBPARTITION ledger_2015_cf_actuals VALUES ('ACTUALS')

,SUBPARTITION ledger_2015_cf_z_others VALUES (DEFAULT)
)
,PARTITION ledger_2016_bf VALUES LESS THAN (2016,1) PCTFREE 0 …
(SUBPARTITION ledger_2016_bf_actuals VALUES ('ACTUALS')

,SUBPARTITION ledger_2016_bf_z_others VALUES (DEFAULT)
)

)
ENABLE ROW MOVEMENT
PARALLEL
NOLOGGING
/
I usually recommend locally partitioning all indexes.  Even though FISCAL_YEAR and ACCOUNTING_PERIOD are the 24th and 25th columns on the unique index on LEDGER, I would still locally partition it.
CREATE UNIQUE INDEX sysadm.ps_ledger_new ON sysadm.ps_ledger
(business_unit,ledger,account,altacct,deptid
,operating_unit,product,fund_code,class_fld,program_code
,budget_ref,affiliate,affiliate_intra1,affiliate_intra2,chartfield1
,chartfield2,chartfield3,project_id,book_code,gl_adjust_type
,date_code,currency_cd,statistics_code,fiscal_year,accounting_period
) LOCAL
(PARTITION ledger_2014 PCTFREE 0
(SUBPARTITION ledger_2014_actuals

,SUBPARTITION ledger_2014_z_others
)

)
TABLESPACE GLLEDGER_IDX
PCTFREE 5 COMPRESS 3
PARALLEL
/
ALTER INDEX ps_ledger NOPARALLEL
/
Maintenance TasksThe introduction of range partitioning on FISCAL_YEAR brings some regular maintenance tasks.
  • New partitions must be added to the ledger and summary ledger tables for each new fiscal year before it is opened and transactions posted to it.  The LEDGER_BUDG table can be similarly partitioned and partitions should be added before budget entries are made.
  • I deliberately do not create MAXVALUE partitions on ledger tables.  If the application attempted to post data to an accounting period for which new partitions had not been created it would experience an Oracle error.  Therefore it is essential to remember to add the partitions in advance. I think this is preferable to forgetting to add the partitions and having performance degrade as data accumulates in the MAXVALUE partition.
  • As periods close and the application ceases to insert or update rows, their partitions can be compressed using
ALTER TABLE … PARTITION … COMPRESS UPDATE ALL INDEXES
  • As and when old fiscal years are no longer needed they can be archived by simply dropping the partitions, or exchanging them out to another table.
Managing Partitioning in PeopleSoftApplication Designer is not good at managing partitioning.  I have written previously about the limited support for partitioning introduced in PeopleTools 8.54.  It uses Oracle's DBMS_METADATA package to preserve existing settings, including partitioning, but the support for initially implementing partitioning is poor.
It may be reasonable to manually manage partitioning in a single table, but if you also have a number of summary ledgers, and have perhaps also built materialized views on them, you can have a significant number of partitioned objects to manage.  Manual scripting is going to become a significant overhead.  You might want to look at Managing Oracle Table Partitioning in PeopleSoft Applications with GFC_PSPART package.

Use ORACLE_UNQNAME for DataGuard Environment

Michael Dinh - Sat, 2017-10-28 09:25

If you are running only 1 database on the host, then it may not be useful.

However, if you run multiple databases, then it makes it easier to automate provided there are consistencies and/or conventions.

DB configuration

HOST01:(SYS@qa):PHYSICAL STANDBY> show parameter db%name

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert                 string
db_name                              string      qa
db_unique_name                       string      qadr

OS configuration

$ env|grep ORACLE
ORACLE_BASE=/u01/app/oracle
ORACLE_SID=qa
ORACLE_UNQNAME=qadr
ORACLE_HOME=/u01/app/oracle/db/11g
$ ps -ef|grep pmon
  oracle  9896050        1   0 16:11:12      -  0:03 asm_pmon_+ASM
  oracle 10354862        1   0 20:06:31      -  0:02 ora_pmon_qa

Check DB status using srvctl

srvctl status database -d $ORACLE_UNQNAME -v
Database qadr is running with online services qarosvc
#!/bin/sh -e
. /opt/oracle/oracle_qa_env
dgmgrl -echo << END
connect /
show configuration
show database ${ORACLE_SID}
show database ${ORACLE_UNQNAME}
exit
END
exit
$ ./d.sh
DGMGRL for IBM/AIX RISC System/6000: Version 11.2.0.4.0 - 64bit Production

Copyright (c) 2000, 2009, Oracle. All rights reserved.

Welcome to DGMGRL, type "help" for information.
DGMGRL> connect /
Connected.
DGMGRL> show configuration

Configuration - dgqa

  Protection Mode: MaxPerformance
  Databases:
    qa   - Primary database
    qadr - Physical standby database

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS

DGMGRL> show database qa

Database - qa

  Enterprise Manager Name: qa_cluster
  Role:                    PRIMARY
  Intended State:          TRANSPORT-ON
  Instance(s):
    qa_1
    qa_2

Database Status:
SUCCESS

DGMGRL> show database qadr

Database - qadr

  Enterprise Manager Name: qa1
  Role:                    PHYSICAL STANDBY
  Intended State:          APPLY-ON
  Transport Lag:           0 seconds (computed 0 seconds ago)
  Apply Lag:               0 seconds (computed 1 second ago)
  Apply Rate:              937.00 KByte/s
  Real Time Query:         ON
  Instance(s):
    qa

Database Status:
SUCCESS

DGMGRL> exit

crsctl stat res -w “STATE = ONLINE”|egrep “db$|TYPE=ora.database.type”

NAME=ora.qadr.db
TYPE=ora.database.type
NAME=ora.qa2dr.db
TYPE=ora.database.type
NAME=ora.stageqadr.db
TYPE=ora.database.type
NAME=ora.testdr.db
TYPE=ora.database.type
dg_show.sh
#!/bin/sh -e
. /opt/oracle/oracle_qa_env
dgmgrl -echo << END
connect /
show configuration
show database ${ORACLE_SID}
show database ${ORACLE_UNQNAME}
exit
END
. /opt/oracle/oracle_qa2_env
dgmgrl -echo << END
connect /
show configuration
show database ${ORACLE_SID}
show database ${ORACLE_UNQNAME}
exit
END
. /opt/oracle/oracle_stageqa_env
dgmgrl -echo << END
connect /
show configuration
show database ${ORACLE_SID}
show database ${ORACLE_UNQNAME}
exit
END
. /opt/oracle/oracle_test_env
dgmgrl -echo << END
connect /
show configuration
show database ${ORACLE_SID}
show database ${ORACLE_UNQNAME}
exit
END
exit
Improved dg_show.sh using function.
#!/bin/sh -e
check_dg()
{
  dgmgrl -echo << END
  connect /
  show configuration
  show database ${ORACLE_SID}
  show database ${ORACLE_UNQNAME}
  exit
  END
}
. /opt/oracle/oracle_qa_env
check_dg
. /opt/oracle/oracle_qa2_env
check_dg
. /opt/oracle/oracle_stageqa_env
check_dg
. /opt/oracle/oracle_test_env
check_dg
exit

Counting the number of business days between 2 dates.

Tom Kyte - Sat, 2017-10-28 05:46
how to get the number of days between two dates excluding saturdays and sundays using pl/sql?
Categories: DBA Blogs

PARALLEL Hint not getting used in SELECT

Tom Kyte - Sat, 2017-10-28 05:46
Hi, I have a SQL written in stored procedure: SELECT /*+ PARALLEL(TB_TEST, 8) +/ FROM TB_TEST WHERE DT <= TO_DATE('01/01/2015', 'MM/DD/YYYY'); When i execute the procedure and monitor v$session, I could see only one session with having SQL_I...
Categories: DBA Blogs

Colums into rows

Tom Kyte - Sat, 2017-10-28 05:46
Tom, I see lots of references to turning rows into columns, but how about turning columns into rows? Obviously I can select x union select y union select z, but that is only realistic for a small number of columns. What would you suggest for a lar...
Categories: DBA Blogs

US Bank executive team awards Cognizant Team on successful NBA Project Implementation.

Arvind Jain - Fri, 2017-10-27 19:09


I am glad to share some pictures from a recent San Francisco event where US Bank top executives recognized and awarded Cognizant NBA team for successful Production delivery of NBA on Adobe Marketing Cloud.

All those nights and weekend of labor is gone now but it also signals that new challenges and opportunities await for me and my team as it is mainly production and operations support from now on .....


















Still Stuck on SiteStudio? Move Your Intranet and Modernize with WebCenter Portal

Fishbowl’s Director of Solutions, Jerry Aber, contributed to this blog post.

Surprisingly, there are still many SiteStudio (Oracle WCM) customers out there using the product for their employee intranet. We just chatted with another one this week, in fact. I say surprisingly because even though the product is technically under support (extended lifetime) until 2019, there are so many advantages and benefits of upgrading a SiteStudio intranet to Oracle WebCenter Portal. Oracle themselves outlined a few in their statement of direction document released back in 2012.

Fishbowl has done numerous WebCenter Portal projects over the last 5 years, and some of those have been SiteStudio to Oracle WebCenter Portal upgrades. We have found for employee intranets specifically that WebCenter Portal is the obvious choice due to its flexibility and how it aggregates content, applications, and data onto a single pane of glass. No more link farms, poorly branded sub-pages, and confusing navigation. If your organization is still  using SiteStudio for its intranet, perhaps this blog post will persuade you to upgrade and modernize today.

SiteStudio Revisited

SiteStudio sites are built on the premise of Templates, Regions, Fragments and Lists with a site design overlaying the top of the structure outlined by its architecture. It did include inline contribution and editing model that helps contributors manage the site with less IT intervention. However, the contribution model wasn’t very streamlined as essentially Word documents were used to structure page content and then converted to HTML. This caused numerous page formatting issues.

Compare this to ability with WebCenter Portal – and enhanced with Fishbowl’s Portal Solution Accelerator – to edit text inline of portal pages, and you have a contribution model that is truly optimized for business user contribution. The impact of this is more frequent updates to page content, which keeps employees coming back for new information leading to better engagement.

SiteStudio to WebCenter Portal: Making the Move

As customers consider their employee intranet/portal roadmap and SiteStudio upgrade path, a big concern that comes up frequently is regarding the overall “migration” from a web page-based SiteStudio intranet site to a Portal-based site. There is no natural migration/upgrade roadmap for making this happen as the underlying technologies are considerably different. Additionally, there are two large issues to consider: The SiteStudio code used to render the content, and that the web content is stored in SiteStudio data files.

However, what we’ve found is that WebCenter Portal sites can be created to consume the SiteStudio assets and use the SiteStudio development model by the leveraging what’s called the Content Presenter task flow. This is one way to ensure a tight and clean integration with the Oracle Content Server. This model works nicely when SiteStudio designs and tools are used, but does not translate well to any portal development paradigms. Such paradigms are way more flexible, modular and use current web technology patterns, such as Oracle JET, that not only make the site look nice but keeps it performing at a high-level.

Also, keep in mind this relegates you to sticking with the SiteStudio Data File storage model for your web content which can be a challenge when it comes to managing content and sharing content around the organization.

So, given that, what are some other questions you and your organization can ask to determine if upgrading from SiteStudio to Oracle WebCenter Portal makes sense and would be beneficial to your organization. Consider:

  • Is sticking with a SiteStudio design and development model future-proofing your platform? Does that help you deliver agile-like project and quickly respond to changing needs?
  • Does your development team want to use new web technology frameworks like Oracle JET?
  • Does your content need to be shared easily and seamlessly without conversion? Do  you want to continue to use Oracle WebCenter Content as your enterprise repository?
  • Do you want to provide easier contribution tools for your end users to manage the site better?
  • Does your organization have an initiatives around enhancing employee engagement, increasing employee retention, or attracting top talent – with your employee intranet viewed as the vehicle to help drive these initiatives?

If you answered yes to any of the above, the time is right to move from SiteStudio to WebCenter Portal. Only WebCenter Portal can deliver a modern and engaging experience for employee intranets, with mobile first design capabilities and the technology foundation for future portal creation at scale – on premise or in the cloud. It also provides the tightest integration with Oracle WebCenter Content, enabling your organization to centralize its high value content assets into an industry leading enterprise content management system.

Oracle WebCenter Portal 12c Value Proposition

WebCenter Portal provides all of this and more. It is a true portal platform that satisfies requests for a better user experience with better performing page loads, and page to page navigation. Furthermore it enables:

  • The ability to store content in a manner so that it can be managed and shared easily.
  • The use of inline contribution of content features using WYSIWYG capabilities.
  • Leveraging newer web technologies such as Oracle Jet, Angular, and others.
  • Integrations with Oracle applications such as E-Business Suite, PeopleSoft, and Taleo – surfacing up content from these systems directly within the portal.

SiteStudio was a great tool for building websites, but one could argue that it was never intended to be used for building employee portals or intranets. If your organization is looking to do just that, and take its employee intranet to the next level, Oracle WebCenter Portal is the clear choice.

 

The post Still Stuck on SiteStudio? Move Your Intranet and Modernize with WebCenter Portal appeared first on Fishbowl Solutions.

Categories: Fusion Middleware, Other

Oracle Database Docker Image in Docker Cloud (Digital Ocean)

Andrejus Baranovski - Fri, 2017-10-27 17:41
Red Samurai is using Docker for our internal development environment. We are running Oracle Database and WebLogic server (with ADF support) on Docker Cloud. It is much easier to manager Docker containers than to maintain our own server.

In this post I will describe how to setup Oracle Database in Docker Cloud. Of course you could run Docker container locally on your machine, but main power of Docker comes with the option to be able to run container in the Cloud.

If you are new to Docker and Docker Cloud, it is very easy to be lost - there are so many various blogs and articles, hard to understand from where to start. I would recommend to start from Get Started, Part 1: Orientation and setup tutorial. You will learn most of the important Docker commands and push Docker image to the registry. Next check this tutorial - Create your first service. It describes how to create Cloud Node through Docker Cloud interface. Keep in mind - Docker itself doesn't run Docker Container, it provides connectors to various Cloud providers for Docker - Azure, Amazon, Digital Ocean, etc. I did some research and it looks like Digital Ocean is the best option to run Docker container - pricing model is straightforward, registration and management processes are simple and clear.

First step should be to create Docker Node in Docker Cloud (you must be connected to Cloud provider). Here is the info for our Digital Ocean node instance:


Node creation process is straightforward. Once node is created, it becomes part of Node cluster:


Docker Cloud node creation process triggers droplet (Cloud instance) creation in Digital Ocean. This process takes around 5 minutes in total.

Digital Ocean provides very nice UI to manage and monitor droplet:


Graphs to monitor droplet performance:


Digital Ocean provides option to run administration console directly in the browser, without even using separate SSH connection (this is very convenient for quick administration).

I found it to be the easiest way to create Oracle DB docker image in Digital Cloud droplet by executing docker run command directly in droplet administration console. I'm using official Oracle Database Enterprise Edition Docker image.

With docker run command, i can pull and run Docker image (referencing official Oracle DB Docker registry). Where detach=true means container will run without blocking console:

docker run --detach=true --name RedSamuraiDB -p 1521:1521 -p 5500:5500 -e ORACLE_SID=RedSamuraiDB -e ORACLE_PDB=ORCLPDB1 store/oracle/database-enterprise:12.2.0.1

Command is executed from Digital Ocean droplet console:


Image is downloaded directly from Docker Store into Digital Ocean droplet:


With docker run command, image is not only downloaded, but also container is started. We can execute docker ps -l to see if container was started successfully:


Finally we need to reset default password (Oradoc_db1) set for Oracle DB Docker container. This can be done by logging into sqlplus from Digital Ocean droplet console. First we need to enter into Docker container prompt by executing (use Docker container name):

docker exec -it RedSamuraiDB bash

Execute:

ALTER USER SYS IDENTIFIED BY newpass
ALTER USER SYSTEM IDENTIFIED BY newpass


DB is accessible from outside:


This brings power of Docker - Oracle DB setup in few minutes.

Security Alert CVE-2017-10151 Released

Oracle Security Team - Fri, 2017-10-27 17:00

Oracle just released Security Alert CVE-2017-10151 to address a vulnerability affecting Oracle Identity Manager.  This vulnerability has received a CVSS Base Score of 10.0.   Oracle recommends affected Oracle customers apply the workaround instructions and fix associated with this Security Alert as soon as possible.

 

For More Information:

The Advisory for Security Alert CVE-2016-10151 is located at http://www.oracle.com/technetwork/security-advisory/alert-cve-2017-10151-4016513.html

Configuring Fusion Middleware 12C Reports Server with Single Sign On and External LDAP server

Yann Neuhaus - Fri, 2017-10-27 12:50

Most of the time when the Reports Server is configured with an Single Sign On Server, it uses the same external LDAP server as the Single Sign On Server.
In our case, we used an Oracle Access Manager as Single Sign On and an Oracle Internet Directory as LDAP server.
Of course the Fusion Middleware needs to be configured with the external LDAP server. This means an Oracle Internet Directory authenticator provider declared in the WebLogic Domain.
And an OAM Identity Assert for the Single Sign On part. But this is part to the normal Fusion Middleware configuration with SSO and external LDAP.

With this configuration in place, once the Reports Server is configured to use the SSO, the following error raises:

REP-56071: User does not exist in Id Store

This is due because Reports Server is not using the default Fusion Middleware Policy Store(jps-config.xml) but the Java Policy Store(jps-config-jse.xml). Checking this file, we can see that the Identity Store is configured to file and not to External LDAP server.

The following of this blog provides the configuration to put in place for the reports Server to take the external LDAP Server as Identity Store.

1. Configure Report Server in SSO mode

cd $DOMAIN_HOME
 
vi  ./config/fmwconfig/servers/WLS_REPORTS/applications/reports_12.2.1/configuration/rwservlet.properties
<?xml version="1.0" encoding="UTF-8"?>
<rwservlet xmlns="http://xmlns.oracle.com/reports/rwservlet" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <server>rep_wls_reports_dev12cvm</server>
   <singlesignon>no</singlesignon>
   <inprocess>yes</inprocess>
   <webcommandaccess>L2</webcommandaccess>
</rwservlet>
Change singlesignon value to yes
<?xml version="1.0" encoding="UTF-8"?>
<rwservlet xmlns="http://xmlns.oracle.com/reports/rwservlet" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <server>rep_wls_reports_dev12cvm</server>
   <singlesignon>yes</singlesignon>
   <inprocess>yes</inprocess>
   <webcommandaccess>L2</webcommandaccess>
</rwservlet>

2. Configure the identity store for Report Server

Edit jps-config-jse.xml locate in the $DOMAIN_HOME/config/fmwconfig and add an additional service instance for the identity store

<serviceInstance name="idstore.ldap" provider="idstore.ldap.provider">
        <property name="idstore.type" value="OID"/>
        <property name="security.principal.alias" value="OidCredMap"/>
        <property name="security.principal.key" value="OidCredKey"/>
        <property name="ldap.url" value="ldap://vm01.dbi-workshop.com:3060"/>
        <property name="max.search.filter.length" value="500"/>
        <property name="username.attr" value="uid"/>
        <extendedProperty>
          <name>user.search.bases</name>
          <values>
            <value>cn=users,dc=geneva,dc=agicoa,dc=org</value>
          </values>
        </extendedProperty>
        <extendedProperty>
          <name>group.search.bases</name>
          <values>
            <value>cn=groups,dc=geneva,dc=agicoa,dc=org</value>
           </values>
        </extendedProperty>
      </serviceInstance>
It must be between and and keep the other service instances
At the bottom of the same file, change the default jpsContext to use the idstore.ldap
Change:
   <jpsContexts default="default">
      <jpsContext name="default">
         <serviceInstanceRef ref="credstore.db"/>
         <serviceInstanceRef ref="keystore.db"/>
         <serviceInstanceRef ref="policystore.db"/>
         <serviceInstanceRef ref="audit.db"/>
         <serviceInstanceRef ref="trust"/>
         <serviceInstanceRef ref="pdp.service"/>
         <serviceInstanceRef ref="attribute"/>
         <serviceInstanceRef ref="idstore.xml"/>
         <serviceInstanceRef ref="idstore.loginmodule"/>
      </jpsContext>

to:

  <jpsContexts default="default">
      <jpsContext name="default">
         <serviceInstanceRef ref="credstore.db"/>
         <serviceInstanceRef ref="keystore.db"/>
         <serviceInstanceRef ref="policystore.db"/>
         <serviceInstanceRef ref="audit.db"/>
         <serviceInstanceRef ref="trust"/>
         <serviceInstanceRef ref="pdp.service"/>
         <serviceInstanceRef ref="attribute"/>
         <serviceInstanceRef ref="idstore.ldap"/>
         <serviceInstanceRef ref="idstore.loginmodule"/>
      </jpsContext>

Save and quit

We need to create a Credential Map for this LDAP connection. Browse to the Enterprise Manager and sign in as weblogic user.

http://vm01.dbi-workshop.com:7003/em

EM1
Move to the Security -> credentials

EM2

EM3
Click on Create Map and name the new credential map: OidCredMap

EM4
Click OK

EM5
Select the credential map OidCredMap and click create key button

EM6

Key: OidCredKey
Type: Password
UserName: cn=orcladmin
Password: *****************
Confirm Password:*****************
Click OK

3. Stop and Start the full Reports WebLogic Domain

4. Configure the Report Server Security for Jobs

a.    Browse to the Enterprise Manager and sign in as weblogic user

http://vm01.dbi-workshop.com:7003/em

b.    Navigate to the EM MBean browser Weblogic Domain > System MBean Browser
c.    Navigate to reports server mbean
Folder: Application Defined MBeans
–> Folder:oracle.reportsApp.config
–> Server:<managedServername>,Application=reports, type=ReportsApp, name=rwserver, ReportsApp.Job
d.    Click child mbean: rwEngrwJaznSec
e.    For property securityId enter value as follows:

rwJaznSec – for OPSS based security

EM8

5. Configure the Report Server Roles

Browse to the Enterprise Manager and sign in as weblogic user

http://vm01.dbi-workshop.com:7003/em

EM9
From the drop down menu, select the Security -> Application roles. The following displays

EM10
Set Application Stripe on Reports and click the search arrow

EM11

Select each role you want to add members to and click edit. In the next wizard, search for the user or group or role and click add.

 

 

Cet article Configuring Fusion Middleware 12C Reports Server with Single Sign On and External LDAP server est apparu en premier sur Blog dbi services.

Hadoop for Database Professionals class at NoCOUG Fall Conference on 9th Nov

Tanel Poder - Fri, 2017-10-27 12:33

If you happen to be in Bay Area on Thursday 9th November, then come check out the NoCOUG Fall Conference in California State University in downtown Oakland, CA.

Gluent is delivering a Hadoop for Database Professionals class as a separate track there (with myself and Michael Rainey as speakers) where we’ll explain the basics & concepts of modern distributed data processing platforms and then show a bunch of Hadoop demos too (mostly SQL-on-Hadoop stuff that database folks care about).

This should be a useful class to attend if you are wondering why all the buzz about Hadoop and various distributed “Big Data” computing technologies – and where do these technologies work well (and not work) in a traditional enterprise. All explained using database professionals’ terminology. And there’s a networking event in the end!

You can check out the event agenda here and can RSVP at http://nocoug.org/rsvp.html. If you aren’t already a NoCOUG member, you can still attend for free as a Gluent Guest using the secret code…. “GLUENT” :-)

See you soon!

NoCOUG Conference – Hadoop Workshop

 

 

 

NB! If you want to move to the "New World" - offload your data and workloads to Hadoop, without having to re-write your existing applications - check out Gluent. We are making history! ;-)

New installed Fusion Middleware 12C Reports or Forms WebLogic Servers fails to start after configuring SSL

Yann Neuhaus - Fri, 2017-10-27 12:23

We installed a Fusion Middleware report and Forms 12.2.1.2.0 on a Linux Server.
This was a single node Reports and Forms servers.
After disabling the Non SSL Listen Port, we get below error in logs while starting the Managed Server with only SSL ports enabled.

####<Oct 27, 2017, 2:38:23,265 PM CEST> <Info> <Deployer> <host01.example.com> <WLS_FORMS> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <728708fe-00a1-4078-bb31-f12fb2c6beae-00000030> <1509107903265> <[severity-value: 64] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-149060> <Module dms.war of application DMS Application [Version=12.2.1.1.0] successfully transitioned from STATE_ACTIVE to STATE_ADMIN on server WLS_FORMS.>
####<Oct 27, 2017, 2:38:23,765 PM CEST> <Critical> <WebLogicServer> <host01.example.com> <WLS_FORMS> <main> <<WLS Kernel>> <> <728708fe-00a1-4078-bb31-f12fb2c6beae-00000031> <1509107903765> <[severity-value: 4] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000386> <Server subsystem failed. Reason: A MultiException has 4 exceptions. They are:
1. java.lang.AssertionError: No replication server channel for WLS_FORMS
2. java.lang.IllegalStateException: Unable to perform operation: post construct on weblogic.cluster.replication.ReplicationService
3. java.lang.IllegalArgumentException: While attempting to resolve the dependencies of weblogic.cluster.singleton.SingletonServicesBatchManager errors were found
4. java.lang.IllegalStateException: Unable to perform operation: resolve on weblogic.cluster.singleton.SingletonServicesBatchManager

A MultiException has 4 exceptions. They are:
1. java.lang.AssertionError: No replication server channel for WLS_FORMS
2. java.lang.IllegalStateException: Unable to perform operation: post construct on weblogic.cluster.replication.ReplicationService
3. java.lang.IllegalArgumentException: While attempting to resolve the dependencies of weblogic.cluster.singleton.SingletonServicesBatchManager errors were found
4. java.lang.IllegalStateException: Unable to perform operation: resolve on weblogic.cluster.singleton.SingletonServicesBatchManager
at org.jvnet.hk2.internal.Collector.throwIfErrors(Collector.java:89)
at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:249)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:357)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471)
at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:232)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2020)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:114)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:88)
at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1213)
at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1144)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666)
at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348)
at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333)
at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54)
at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)
Caused By: java.lang.AssertionError: No replication server channel for WLS_FORMS
at weblogic.cluster.replication.ReplicationManagerServerRef.initialize(ReplicationManagerServerRef.java:128)
at weblogic.cluster.replication.ReplicationManagerServerRef.<clinit>(ReplicationManagerServerRef.java:84)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at weblogic.rmi.internal.BasicRuntimeDescriptor.getServerReferenceClass(BasicRuntimeDescriptor.java:496)
at weblogic.rmi.internal.BasicRuntimeDescriptor.createServerReference(BasicRuntimeDescriptor.java:452)
at weblogic.rmi.internal.OIDManager.makeServerReference(OIDManager.java:193)
at weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:173)
at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceRemote(RemoteObjectReplacer.java:107)
at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceObject(RemoteObjectReplacer.java:90)
at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:252)
at weblogic.cluster.replication.ReplicationServicesImplBase.exportSelf(ReplicationServicesImplBase.java:17)
at weblogic.cluster.replication.ReplicationManager.startService(ReplicationManager.java:305)
at weblogic.cluster.replication.ReplicationService.start(ReplicationService.java:46)
at weblogic.server.AbstractServerService.postConstruct(AbstractServerService.java:76)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1262)
at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:332)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:374)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471)
at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:232)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2020)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:114)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getService(ServiceLocatorImpl.java:693)
at org.jvnet.hk2.internal.ThreeThirtyResolver.resolve(ThreeThirtyResolver.java:78)
at org.jvnet.hk2.internal.ClazzCreator.resolve(ClazzCreator.java:211)
at org.jvnet.hk2.internal.ClazzCreator.resolveAllDependencies(ClazzCreator.java:234)
at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:357)
at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:471)
at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:232)
at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:85)
at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2020)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:114)
at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:88)
at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1213)
at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1144)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:666)
at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348)
at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333)
at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54)
at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)
at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:346)
>
####<Oct 27, 2017, 2:38:23,815 PM CEST> <Notice> <WebLogicServer> <host01.example.com> <WLS_FORMS> <main> <<WLS Kernel>> <> <728708fe-00a1-4078-bb31-f12fb2c6beae-00000031> <1509107903815> <[severity-value: 32] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <BEA-000365> <Server state changed to FAILED.>

Even if no cluster is used, the default Reports and Forms domain configuration creates a WebLogic Cluster.

To solve “Servers do not have a common channel to communicate over” errors do the following steps as administrator

  1. Login into the Administration Console
  2. Expand the Environment tab and navigate to Clusters
  3. Select the and click ‘Replication’ subtab in the Configuration TAB
  4. Find Replication Channel, check box beside “Secure Replication Enabled” (to set it as true)
  5. Save
  6. Rerun the steps 2 to 5 for all clusters
  7. Activate the changes
  8. Restart the full WebLogic domain

or in WLST:
Start wlst.sh and connect to the WebLogic Domain

connect('user','password','t3s://host01.example.com:7002')

startEdit()

cd('/Clusters/cluster_forms')
cmo.setClusterType('none')
cmo.setPersistSessionsOnShutdown(false)
cmo.setReplicationChannel('ReplicationChannel')
cmo.setSecureReplicationEnabled(true)

save()
activate()

Rerun the same for the reports_cluster

Once done restart the full WebLogic Domain

 

Cet article New installed Fusion Middleware 12C Reports or Forms WebLogic Servers fails to start after configuring SSL est apparu en premier sur Blog dbi services.

Tuning SQL with MIN and MAX functions

Tom Kyte - Fri, 2017-10-27 11:26
<code>create table test_dept (dept_id number, dept_name varchar2(50), dept_region number); alter table test_dept add constraint pk primary key (dept_id); create table test_emp (emp_id number, sal number, dept_id number , constraint fk f...
Categories: DBA Blogs

AWR report

Tom Kyte - Fri, 2017-10-27 11:26
Hi Tom, Can you please explain how to look AWR report in simple term as i am very new to this. Thanks alot.
Categories: DBA Blogs

FGA Auditing - How to avoid false positives when FGA is on a table column and that column is in a view and other view columns are selected?

Tom Kyte - Fri, 2017-10-27 11:26
I'm new to FGA auditing and have created an FGA policy for SELECT on table T column SSN. This works well. Any user that specifically selects column T.SSN, generates a row in my audit table. (I'm using DB 11.2.0.4) select T.SSN from T; -- generate...
Categories: DBA Blogs

All about the DUAL table

Tom Kyte - Fri, 2017-10-27 11:26
Hi Tom Feels good to post a question after quite some time. Look at the following : SQL> desc dual Name Null? Type ----------------------------------------- -------- ---------------------------...
Categories: DBA Blogs

AskTom Architecture

Tom Kyte - Fri, 2017-10-27 11:26
Hi Tom, Thanks for this great resource! I am sure there are many others out there like myself who spend several hours a day reading the questions and your answers. Since so many people seem to be very curious about the architecture of your site...
Categories: DBA Blogs

Pages

Subscribe to Oracle FAQ aggregator