A simple tip on how to retrieve a history of all Patch Set Update applied to a database via SQL.
The behaviour of the pullup dependency as described in the Oracle documentation for CRS resources is counter-intuitive and so I decided to do some testing around it to see the results and reassure myself that the documentation was correct.
Whilst developing some administrative functions within PL/SQL I needed to know whether the database that the code was being run in was part of an Oracle DataGuard setup, which you would think would be a trivial exercise. My first thought was that we could determine this via v$database. If the DATABASE_ROLE column in v$database contains STANDBY then we know... Continue Reading →
Users were complaining of ORA-12514: TNS:listener does not currently know of service requested in connect descriptor errors whilst connecting to a database on a RAC cluster. The cause was elusive, but was eventually tracked down to an unpublished bug relating to SCAN listener re-registration.
This is a subject that I am often asked about by developers and support teams changing application configuration details: What is the correct format of JDBC connection strings for the thin driver? Oracle's JDBC Thin driver uses Java sockets to connect directly to Oracle. It provides its own TCP/IP version of Oracle's SQL*Net protocol. Because it... Continue Reading →
Whilst investigating a user issue today, I came across an unusual occurrence of the "ORA-01031: insufficient privileges" error which was not caused to the usual suspects of missing grants and/or tablespace quota.
Oracle clients (and programs that use Oracle clients/drivers) will search for TNS configuration files such as sqlnet.ora and tnsnames.ora in the following order. Note that the first file to be found will be used -- so if there were files in both location 3 and location 5, then the one in location 3 would be found first... Continue Reading →
The unix command scp is very useful for transferring files between two hosts over a secure connection, but sometimes you need to kick off an scp command that will take several hours to complete and you want to disconnect and go home. Using "screen" One approach is to use the screen command (available only on linux AFAIK) to start the initial transfer, then... Continue Reading →