About

Martin Klier

usn-it.de

Oracle: Convert a partitioned table into an unpartitioned one

License fees can bee massive. So for some machines it’s just useless to buy Oracle Enterprise Edition, sometimes Standard Edition is simply enough. Migration to SE for a schema with partitioned tables leaves you one option: CTAS all partitioned tables and export them, reimport them on your new box and modify all DBMS_METADATA-generated DDLs so […]

read more

Oracle: Specify the number of occurrences before metric alerting starts

It’s not possible to specify a minimum of consecutive occurrences before alerting starts in in Enterprise Manager, it will always scream out at first time touching the line. But you can do so in command line. Just execute DBMS_SERVER_ALERT.SET_THRESHOLD with parameter consecutive_occurrences set to a value >1. It’s a very nice way to stop annoying […]

read more

Oracle Explain Plans or Execution Plans: Guess or Reality?

Oracle finally desupported the rule-based optimizer with version 10g. Since 9i, users are good adviced to make themself familiar with the cost-based-optimizer (CBO). In order to understand what happens with your statement after parsing with CBO involved, and to be able to tune your queries, displaying, understanding and optimizing explain- or execution plans is essential. […]

read more

Get Oracle User DDL with dbms_metadata

Sometimes you have to recreate a user in a DB, and you like it to be the same as before again. To have its DDL at hand is usually rather convenient. DBMS_METADATA is a great toolbox to get it, my example is just a short but hopefully useful excerpt of its possibilities: set long 200000 […]

read more

Creating Oracle AWR reports quicksheet

For comparing, classifying, benchmarking and forecasting databases, Oracle’s Automatic Workload Repository (AWR) is neat. (But remember! You will need a diagnostics pack license for that as described here and here – if you need a free technology for performance monitoring, consider using Craig Shallahamer’s OSM toolkit.) This post simply describes the package calls to create […]

read more

New job in 2009 – looking back at A.T.U

After working at A.T.U Auto-Teile-Unger headquarters for over six years, there’s a new challenge calling on January 1st, 2009, and hopefully, it’s for a long time again. I guess it’s a good time to look back: […]

read more

Oracle: Remove scheduler jobs in a loop

If there are too much scheduler jobs in an Oracle database, the CJQ process may die unexpectedly. This has nothing to do with job history, not, it’s the number of jobs known to the system. In my experience, the critical number is somewhere around 32.000 in 10.2 64bit. By the way, that’s the solution for […]

read more

Oracle: How to stop a (MTS) dispatcher process – mad behaviour of ALTER SYSTEM

Manually stopping a dispatcher process is one of the things I have to look up each time, since it’s needed not that often. And, the word “dispatcher” does not appear in the command line! 🙂 alter system shutdown immediate ‘D000’; where “D000” is the dispatcher process name selected from v$dispatchers or gv$dispatchers. (In the latter […]

read more