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 →
While refreshing a standby Database (11gR2) using “duplicate target database for standby” I recently encountered an error which one would normally associate with password files and/or the fact that the SYS password is not the same on the source and target databases. It was neither
Recently, we encountered a strange problem whereby trying to issue a select over a database link caused an ORA-1089 "immediate shutdown in progress - no operations are permitted" error even though the source databases was up and fully operational.
An article describing the installation process for Oracle Database Access Components (ODAC) on Windows Server and details of common questions and errors encounted.
When performing a backup of a large database using RMAN, you often get asked "how is the backup progressing?" and "when it will complete?". Although the log produced by RMAN is detailed in almost every other aspect, there isn't any information recorded that will allow you to give a simple and straightforward answer to these questions However, the information is available within the data dictionary.
As a DBA, it is generally a good idea to log all your activity when working on Unix/Linux servers. Logging provides an audit of changes that you have made to a system as well as being a valuable resource for notes and documentation. This article describes how to log all PuTTY sessions and how to automtically maintain the resulting logfiles in a logical directory structure.
The Oracle Database File System (DBFS) is a feature that creates a standard file system interface on top of files and directories that are stored in database tables. DBFS is similar to NFS in that it provides a shared network file system that looks like a local file system. Like NFS, there is a server... Continue Reading →
Filesystem in Userspace (FUSE) is a loadable kernel module for Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a "bridge" to the actual kernel interfaces. It is a pre-requisite... Continue Reading →
It is often necessary to make connections to the database from shell scripts held on the filesystem. This can be a major security issue if these scripts contain the database connection details. One solution is to use OS Authentication, but Oracle 10g Release 2 gives us the option of using a secure external password store... Continue Reading →
The following message was being repeatedly reported in our alert log: 2012-12-05 04:44:36.067 [client(10553)]CRS-10051:CVU found following errors with Clusterware setup : PRVF-5408 : NTP Time Server "22.214.171.124" is common only to the following nodes "ora005" PRVF-5408 : NTP Time Server "126.96.36.199" is common only to the following nodes "ora005" Certainly a worrying message -- imagine the... Continue Reading →
Finally, with Oracle 11g comes a solution to the dreaded "ORA-00054: resource busy and acquire with NOWAIT specified" message. It's now possible to specify how long the command should wait before timing out.