Can a Battle Oracle take the Marshall dedication?

When an Oracle chooses the Battle mystery, they become trained in all martial weapons belonging to a chosen weapon group (e.g. Sword, Axe).

A requirement of the Marshall dedication is that the character is ‘trained in martial weapons’.

Is the Oracle therefore eligible to take the dedication, or would they first need to take the Weapon Proficiency general feat?

Enabling TLS and TLS-MA simultaneously for different clients of a Oracle DB

We have a requirement where we want to enable TLS-MA for some of the clients connecting to a specific Oracle database while the other clients can continue to use TLS with server certificate.

  • We are using Oracle 12.c in our environment.
  • Clients are connecting using the jdbc thin driver

I am an Oracle noob and i am not able to understand the documentation here

Will it work if i create 2 listeners; one with SSL_CLIENT_AUTHENTICATION=TRUE and another with SSL_CLIENT_AUTHENTICATION=FALSE

Is it possible to attach oracle database file after clean install

I had an Oracle 10g instance on my Win2008R2 server. Unfortunately, the server crashed and we had to re-install the operating system on C: drive. The oracle files are on other drives except than C.

The other drives (except C) are restored from disk backups. I don’t have dump file, I only have oracle data files such as USERS01.DBF and the oracle control files.

Now I am trying to find a way to install oracle again on the server but I am just wondering about how I can attach the current .DBF files to the new oracle instance? Is this possible? If so, how can I attach the current .DBF files to Oracle?

Currently there is no "OracleService" on services.msc and no listener as well. But previos oracle was installed on F drive so I still have the oracle binaries and data files on F drive.

Really appreciate if you can provide any information on this.

How can I call a SQL Server stored procedure from Oracle and retrieve a scalar return value?

I’m developing a PL/SQL solution in Oracle Database Enterprise Edition 12.1.0.2. I’m calling stored procedures in Microsoft SQL Server 2014.

I am using DG4ODBC with the DBMS_HS_PASSTHROUGH package to call those stored procedures.

For stored procedures that return a tabular result set, I am able to use PARSE, FETCH_ROW, and GET_VALUE to retrieve the values. (My solution uses hard parsing, but it works for the volume we’re expecting. I’m open to tips if you know how I can use binds, but that’s not my question.)

DECLARE    sql_server_cursor_     BINARY_INTEGER;    sql_server_statement_  VARCHAR2(32767);    fetched_value_col1_    whatever_type_from_col1;    fetched_value_col2_    whatever_type_from_col2; BEGIN    sql_server_statement_ := 'EXEC "myDatabase"."dbo"."myProcedure" @p_one = N''' || sanitize__(my_argument_) || ''';';    sql_server_cursor_ := dbms_hs_passthrough.open_cursor@sql_server_link_;    dbms_hs_passthrough.parse@sql_server_link_(sql_server_cursor_, sql_server_statement_);    WHILE dbms_hs_passthrough.fetch_row@sql_server_link_(sql_server_cursor_) > 0    LOOP       dbms_hs_passthrough.get_value@sql_server_link_(sql_server_cursor_,  1, fetched_value_col1_);       dbms_hs_passthrough.get_value@sql_server_link_(sql_server_cursor_,  2, fetched_value_col2_);       dbms_output.put_line('fetched_value_col1_  ' || fetched_value_col1_);       dbms_output.put_line('fetched_value_col2_  ' || fetched_value_col2_);    END LOOP;    dbms_hs_passthrough.close_cursor@sql_server_link_(sql_server_cursor_); END; / 

I have a stored procedure in SQL Server that returns a scalar integer.

DECLARE @return_value int; EXEC @return_value = "myDatabase"."dbo"."myProcedure" @p_one = N'HelloWorld', @p_two = 42; SELECT @return_value; 

From Oracle, how would I call this procedure and retrieve that scalar value?

Materialized views with fast refresh in Oracle 11g SE

I am kinda lost in available features of Standard Edition Oracle Database 11g. I want to know if I am able to use materialized views with fast refresh in SE without violating any kind of licenses. I’m aware of list if features on Oracle site but I don’t know which feature MV fast refresh is a part of. Could anyone please explain?

Does Oracle guarentee that ORA_HASH is used to determine which hash partition a row is inserted, and will this be honored in the future?

I use hash partitioning for a few of my very large tables, and occasionally I have a use case where it would be convenient to have a mechanism that would return the partition name that a row would be inserted into, given a partition value.

This blog here shows that we can use ORA_HASH function for this purpose. Incidentally, it appears this page is the only page on the entire internet that explains this.

I’ve used it successfully and it works in all cases that I have tried. It seems ORA_HASH is definitely what Oracle itself uses to pick the hash partition that it inserts data into, and that at least on the current version of Oracle it is safe to use for this use case.

However there is no guarantee in the documentation that Oracle even uses it, or will continue to use it in the future. This makes me think that using ORA_HASH in this way is not safe or future proof. What if a DB is upgraded and ORA_HASH no longer behaves this way?


For reference, you can use the following SQL to return the hash partition for a given value:

SELECT partition_name FROM all_tab_partitions WHERE table_name = 'FOO'     AND partition_position = ORA_HASH('bar', n - 1) + 1 

Where 'bar' is the value you wish to analyze, and n is the number of partitions in your table. There are some edge cases when the number of partitions is not a power of 2, which is covered in the blog article linked above.

Understanding Logging Priority & Options in Oracle DB

From my understanding once we switch on database logging, the entire DB goes into logging mode and generates redo logs.

I want to categorically exclude/include some tables/tablespaces from this logging as they are not required for recovery incase of failures.

Is there any priority on the logging options and to exclude certain tables/tablespaces from logging so as to reduce some of the traffic going to redo logs.

Can’t create diskgroup in Oracle 19c

I’ve successfully installed Oracle 19c with this article.

Now I need to restore the database from existing backups. I’ve first restored the control file, then I started to restore the database:

rman> restore database; ... ORA-19504: failed to create file "+DATA" ORA-17502: ksfdcre:4 Failed to create file +DATA ORA-15001: diskgroup "DATA" does not exist or is not mounted ORA-15374: invalid cluster configuration ... 

Then I tried to create the diskgroup, and it failed:

SQL> create diskgroup DATA external redundancy disk '/dev/loop1' force; create diskgroup DATA external redundancy disk '/dev/loop1' force * ERROR at line 1: ORA-15000: command disallowed by current instance type 

Is there a work around? I can either ignore the diskgroup or find a way to create one, I just don’t how to fix it.

Oracle 18c opatch util cleanup not working

System:

[oracle@hostname:/opt/oraclegrid/18]$   uname -a SunOS hostname 5.11 11.4.24.75.2 sun4v sparc sun4v 

Database:

Oracle 18c 18.10 (April 2020 patch), RacOneNode setup 

Opatch

OPatch Version: 12.2.0.1.21 

I found out, that a .patch_storage folder in GRID/DB homes takes really much space on file system. I tried to use opatch util cleanup utility (this utility should clean this folder) but nothing happened. Here is output:

[oracle@hostname:/opt/oraclegrid/18]$   du -hs .patch_storage/  4.1G   .patch_storage [oracle@hostname:/opt/oraclegrid/18]$   opatch util cleanup Oracle Interim Patch Installer version 12.2.0.1.21 Copyright (c) 2020, Oracle Corporation.  All rights reserved.   Oracle Home       : /opt/oraclegrid/18 Central Inventory : /opt/oraInventory    from           : /opt/oraclegrid/18/oraInst.loc OPatch version    : 12.2.0.1.21 OUI version       : 12.2.0.4.0 Log file location : /opt/oraclegrid/18/cfgtoollogs/opatch/opatch2020-09-13_14-47-13PM_1.log  Invoking utility "cleanup" OPatch will clean up 'restore.sh,make.txt' files and 'scratch,backup' directories. You will be still able to rollback patches after this cleanup. Do you want to proceed? [y|n] y User Responded with: Y  Backup area for restore has been cleaned up. For a complete list of files/directories deleted, Please refer log file.  OPatch succeeded. [oracle@hostname:/opt/oraclegrid/18]$   du -hs .patch_storage/  4.1G   .patch_storage 

Log output:

[Sep 13, 2020 2:47:14 PM] [INFO]    CUP_LOG: Trying to load HomeOperations object [Sep 13, 2020 2:47:14 PM] [INFO]    CUP_LOG: HomeOperations provider not available [Sep 13, 2020 2:47:14 PM] [INFO]    CUP_LOG: This is unusual state. HomeOperations object is null, but it should not be null if HomeOperations create went thru. CUP is not available [Sep 13, 2020 2:47:14 PM] [INFO]    OPatch invoked as follows: 'util cleanup -invPtrLoc /opt/oraclegrid/18/oraInst.loc ' [Sep 13, 2020 2:47:14 PM] [INFO]    Runtime args: [-Xmx1536m, -XX:+HeapDumpOnOutOfMemoryError, -XX:HeapDumpPath=/opt/oraclegrid/18/cfgtoollogs/opatch, -DCommonLog.LOG_SESSION_ID=, -DCommonLog.COMMAND_NAME=ut il, -DOPatch.ORACLE_HOME=/opt/oraclegrid/18, -DOPatch.DEBUG=false, -DOPatch.MAKE=false, -DOPatch.RUNNING_DIR=/opt/oracle/18/OPatch, -DOPatch.MW_HOME=, -DOPatch.WL_HOME=, -DOPatch.COMMON_COMPONENTS_HOME=, -DO Patch.OUI_LOCATION=/opt/oraclegrid/18/oui, -DOPatch.FMW_COMPONENT_HOME=, -DOPatch.OPATCH_CLASSPATH=, -DOPatch.WEBLOGIC_CLASSPATH=, -DOPatch.SKIP_OUI_VERSION_CHECK=, -DOPatch.NEXTGEN_HOME_CHECK=false, -DOPatc h.PARALLEL_ON_FMW_OH=] [Sep 13, 2020 2:47:14 PM] [INFO]    Heap in use : 24 MB                                     Total memory: 307 MB                                     Free memory : 282 MB                                     Max memory  : 1365 MB [Sep 13, 2020 2:47:14 PM] [INFO]    Oracle Home       : /opt/oraclegrid/18                                     Central Inventory : /opt/oraInventory                                        from           : /opt/oraclegrid/18/oraInst.loc                                     OPatch version    : 12.2.0.1.21                                     OUI version       : 12.2.0.4.0                                     OUI location      : /opt/oraclegrid/18/oui                                     Log file location : /opt/oraclegrid/18/cfgtoollogs/opatch/opatch2020-09-13_14-47-13PM_1.log [Sep 13, 2020 2:47:14 PM] [INFO]    Patch history file: /opt/oraclegrid/18/cfgtoollogs/opatch/opatch_history.txt [Sep 13, 2020 2:47:16 PM] [INFO]    [OPSR-TIME] Loading raw inventory [Sep 13, 2020 2:47:16 PM] [INFO]    [OPSR-MEMORY] Loaded all components from inventory. Heap memory in use: 54 (MB) [Sep 13, 2020 2:47:16 PM] [INFO]    [OPSR-MEMORY] Loaded all one offs from inventory. Heap memory in use: 54 (MB) [Sep 13, 2020 2:47:16 PM] [INFO]    [OPSR-TIME] Raw inventory loaded successfully [Sep 13, 2020 2:47:16 PM] [INFO]    Invoking utility "cleanup" [Sep 13, 2020 2:47:16 PM] [INFO]    [OPSR-TIME] Cleaning up backup [Sep 13, 2020 2:47:16 PM] [INFO]    OPatch will clean up 'restore.sh,make.txt' files and 'scratch,backup' directories.                                     You will be still able to rollback patches after this cleanup.                                     Do you want to proceed? [y|n] [Sep 13, 2020 2:47:16 PM] [INFO]    Start to wait for user-input at Sun Sep 13 14:47:16 CEST 2020 [Sep 13, 2020 2:47:19 PM] [INFO]    Finish waiting for user-input at Sun Sep 13 14:47:19 CEST 2020 [Sep 13, 2020 2:47:19 PM] [INFO]    User Responded with: Y [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : [Sep 13, 2020 2:47:19 PM] [INFO]    Cannot delete as either pathToBeDeleted is empty or it does not contain .patch_storage : 

Is this a bug? Or am i doing something wrong? Is this command not supported anymore in latest versions of opatch? Thank you guys