These days I’m implementing Oracle Dataguard for two Oracle databases 10.2 as part of disaster recovery project, one of them is around 1.7TB, not yet production. As part of the DG setup backups have to be available for both primary and standby. I preferred to use ASM and was able to negotiate with the storage admin to run storage replication for the FRA disks during the backup. This way I would have the same structure and files, locally at the disaster site immediately after the backup of the primary database is completed.
Unfortunately two weeks passed and by (more...)
In the last 10 weeks suddenly I lost 80% of my blog visits… thanks to google! In the last 6 months I found dozens of copycats of posts I wrote and those sites have a greater rank than my legit original blog!
For that, Thank you a lot google… you’re (more...)
Red Hat Enterprise Linux has been out since November of 2010. Here we are 16 months later and it's not certified for database use by Oracle yet.
Yes, I know the database can be installed on RHEL6. In fact, I have it running in my development environment right now with no issues related to the OS/DB integration. Try to get Oracle Support to help you on those platforms for an issue unrelated to
This is something I would like to share for a long time, but for one or another reason I didn’t. The error is nothing special, but then I run into very interesting case.
This happen when I had to shutdown one server for maintenance and then boot it again. Once the OS started I notice that the database didn’t ran automatically. When I try to run it manually I got the following error:
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATA/orcl/spfileorcl.ora'
ORA-17503: ksfdopn:2 Failed to open file +DATA/orcl/spfileorcl.ora
ORA-15077: could not locate (more...)
These days I configured Oracle OSWatcher tool and yast package for EM Grid Control used to manage and monitor Oracle servers. I want to share how quickly to configure and start using them on Linux.
OSWatcher invokes system utilities like ps, top, iostat, vmstat, netstat and collects data according to the specified parameters. You can download it from Metalink.
unzip it to OSWatcher directory you would use($OSWATCHER_HOME)
tar -xvf oswbb4.0.tar
OSWatcher has been renamed to OSWatcher Black Box to avoid the confusion with the too many tools with this name. OSWatcher Black Box (more...)
I've been reviewing a lot of resume's lately. Please tell me, what is the purpose stating your "Job Objective"? Isn't it implied that your objective is to find a new job, specifically my job? I assume you're dynamic and technical and your vast expertise will help my company conquer the world.
Also, what is the purpose of summarizing your experience on the first page and then giving me eight
Interesting take on what managers are thinking: http://quickbase.intuit.com/blog/2012/01/09/10-things-your-boss-isnt-telling-you/
I think it is time to write another blog post. I will talk about an old but very useful way how to clone a database from one server to another. In my particular case it is the best solution that perfectly fits to all requirements put on the (more...)
I am using resumable space for a lot of my operations. However, it seems as though the SQL*Plus copy command doesn't respect the resumable feature?
Note, I am issuing an "alter session enable resumable timeout 14400" through a login trigger. I know this works because if I do the same type of operation through an INSERT/SELECT through a dblink, my session waits for more space to be added.
It has been a busy period for me last days both at work and life. I am glad I spent a week in Slovenia and around. I had a presentation about Oracle GoldenGate at SIOUG. My presentation was short in slides and with 30 minutes demo. I uploaded (more...)
We just upgraded one of our 10.2.0.3 dbs to 18.104.22.168 plus some patches. Today an interesting ORA-07445 was thrown to the alert.log:
ORA-07445: exception encountered: core dump [__intel_new_memcpy()+382] [SIGILL] [ADDR:0x3FE5CAE] [PC:0x3FE5CAE] [Illegal operand] 
Searching metalink didn't get us anywhere, so we opened a TAR (or iTar, or SR, or ServReq, or whatever the heck they are calling
I am running this query:
DELETE FROM tab;
It's been running since 2PM yesterday. Can you make it go faster?
You shouldn't delete 80M rows in a single transaction. You should have used TRUNCATE instead of DELETE. I have killed your session and it will be a while before it completes.
Developer (5 minutes later):
I tried TRUNCATE but it says my table is locked.
I know, the
I often get asked to take a look at an Oracle eBusiness Suite concurrent request to see what it is doing, this can come from a few different angles:
- What requests are currently running?
- I have an operating system process that is taking too much CPU - what is it doing?
- Can you tell me where the request is at? I've clicked on the log but it doesn't show anything!
- My request is taking too long - can you check for blocking locks?
There are a number of strategies to track and trace where things are at for a running (more...)
If you expose production data to test, QA or UAT environment, most probably you’ll need to hide sensitive data. You can do this in different ways. One of them is to
use Oracle Data Pump to mask the data. You may choose to do that on the very export step (more...)
I have a persnickety problem with a particular table being aged out of the buffer cache. I have one query that runs on a defined basis. Sometimes when it is run, it does a lot of physical reads for this table. Other times, it does no physical reads.
So I decided to play around with a different buffer pool and let this table age out of cache on it's own terms rather than competing in the
While researching a corrupt block on 11g SE, we came across a number of objects that were compressed according to the data dictionary.
How could that be? Compression is not a feature of SE, or so we thought.
The objects in question were all indexes. In fact, Oracle creates compressed indexes in ?/apex/core/tab.sql even though we are on SE.
Further investigation lead me to Doc 1084132.1 which
Sometimes tuning a database can be rewarding. I get great satisfaction when helping a user take their query from 10 minutes down to 3 seconds. But it doesn't always work that way. Consider this recent exchange:
Developer to DBA Manager: The database is slow.
DBA Manager to DBA: Trace his process.
The DBA traces the developer's process and comes up with about 12 queries that can benefit from
I drill into my DBAs heads that the first step in tuning any process is to get a trace. Don't show me the query plan until you show me what the database actually executed. The trace is the fundamental clue in any performance investigation. The wait events tell you exactly what's going on and there is no question where the bulk of the time is being spent.
When we see a large number of waits on
Something I discovered recently is that the DEFAULT profile for Oracle 11g sets the PASSWORD_LIFE_TIME to 180 instead of UNLIMTED by default. Applications will encounter an "ORA-28002: the password will expire within X days" error message if you keep the default value.
To change the PASSWORD_LIFE_TIME, you:
ALTER PROFILE default LIMIT password_life_time UNLIMITED;
One thing to keep in mind is
We had a fair number of problems related to bind variable peeking in our 10.2.0.3 and 10.2.0.4 dbs. In fact, the plans became so erratic that we decided to just turn bind variable peeking off by setting _optim_peek_user_binds=false in all the init.ora files.
Flash forward to Oracle 11g (22.214.171.124) and the optimizer has been enhanced to use bind variable peeking much better. After converting to