maandag, oktober 29, 2007

oracle 10.1.0.5 on Leopard

I had my installation upgraded to 10.1.0.5 while running Tiger. After the leopard installation (I installed on a new volume and imported the users from the old volume) I only had to create the dba group like it was in tiger and assign it to my dba account.


$>sudo dscl . -create /Groups/dba
$>sudo dscl . -create /Groups/dba gid 504
$>sudo dscl . append /Groups/dba GroupMembership ronr


After this I could start the database as before:

$>uname -a
Darwin ronald-roods-power-mac-g4.local 9.0.0 Darwin Kernel Version 9.0.0: Tue Oct 9 21:37:58 PDT 2007; root:xnu-1228~1/RELEASE_PPC Power Macintosh
test10 ronr@ronald-roods-power-mac-g4:/Users/oracle/oradata
$>sqlplus "/ as sysdba"

SQL*Plus: Release 10.1.0.5.0 - Production on Mon Oct 29 20:52:17 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 612368384 bytes
Fixed Size 780656 bytes
Variable Size 300684944 bytes
Database Buffers 310378496 bytes
Redo Buffers 524288 bytes
Database mounted.
Database opened.
SQL> select * from v$instance;

INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
HOST_NAME
----------------------------------------------------------------
VERSION STARTUP_T STATUS PAR THREAD# ARCHIVE LOG_SWITCH_
----------------- --------- ------------ --- ---------- ------- -----------
LOGINS SHU DATABASE_STATUS INSTANCE_ROLE ACTIVE_ST
---------- --- ----------------- ------------------ ---------
1 test10
ronald-roods-power-mac-g4.local
10.1.0.5.0 29-OCT-07 OPEN NO 1 STOPPED
ALLOWED NO ACTIVE PRIMARY_INSTANCE NORMAL


SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.5.0 - Production

installation


Since many people had problems getting there leopard to run oracle 10gR1 I decided to create a new installation on my system. For the installation we need gcc 3.3. In tiger Apple had a nice little script /usr/sbin/gcc_select that enabled us to easily switch back to the gcc 3.3 compiler. In leopard this compiler version has to be installed separately and the gcc_select script of tiger can still be used for this goal. For the rest the installation is as straightforward as it was in tiger ... (not very). Ignore all link errors and repeat the trick with

sudo gcc_select 3.3
cd $ORACLE_HOME/lib
mv libnnz10.dylib libnnz10.dylib.ori
relink all
mv libnnz10.dylib.ori libnnz10.dylib

After this I made symlinks from the old ORACLE_HOME/dbs/ passwdORACLE_SID.ora and spfileORACLE_SID.ora to the current ORACLE_HOME and was able to start the database without any problems.

problems


It appeared that the problem others ran into had to do with the processes parameter and the os limits kern.maxproc (default 532) and kern.maxprocperuid (default 266). Despite the fact that those parameters were set to good values a kernal panic came when the instance started. A bug has been filed by Apple so let's hope a quick patch is available soon.

donderdag, oktober 04, 2007

what to expect from oracle 11g ?

last week


It's already more than a week ago that I visited the oracle partner briefing where a presentation was given about a few of the new features to expect in 11g. As always every thing is better than ever before and it works ... I really hope this is true. A very welcome feature would be stability. It really amazes me how many problems we currently have trying to run with 10.2.0.3. Memory corruption, incomplete stack dumps after ora-7445 errors and even logical corruption in indexes. I am afraid we can only hope those problems are solved when 11g is launched.

usable features


There are many features but a few of the more useful features at this moment could be
1) flashback archive
2) cdc improvements
3) asm instance affinity
4) database replay
5) result cache
6) secure files
7) dbms_scheduler
8) asm rolling ugrade

Flashback archive


This enables us to show how the contents of a table looked like on a specific date, somewhere last year. the idea is that the life-span of the data is managed by the database.

CDC improvements


The change data purge now give the possibility to purge on a date range. Very useful since it makes recovery scenarios a little easier. Also the ability to switch CDC off and on give more control over the operation.

ASM instance affinity


Since more and more cluster databases are created it's not surprising to see more and more stretched clusters. Latency is very important in such a system. Now it is possible to have a SAN on site A and an other SAN at remote site B and have the ASM instance on site A use the SAN on site A for reads. This makes a stretched cluster less vulnerable for read latency.

database replay


Did you ever want to test a different configuration and see how it performs with the current production load as input ? Database Replay now gives the chance to do this. Input can come from a 10.2.0.4 database and the load can be applied on a 11g database. If this works it's really great.

result cache


Why run a pl/sql procedure again when the input is the same ? We can just return the result from the result cache. A nice performance booster.

secure files


This has not a lot to do with security at all. We could already drop files in the database for storage. This used to be slower than storing on a filesystem. Now oracle claims that with secure files we can store them nice and safe in the database nearly as quick as on a filesystem.

dbms scheduler


In 11g we can run operating system jobs using a chosen os account. Nothing new, we could choose an account in 10gR2 but now it's more dynamic. In 10gR2 the account was set for an ORACLE_HOME and now we can choose an account when submitting a job. Jobs now also can run on a remote host, making dbms scheduler more and more enterprise ready.

asm rolling upgrade


ASM now can handle multiple oracle versions for ASM and also support multiple oracle versions for the databases that use the ASM instance[s]. Again, great, if it works.

There are many many more improvements, this is just a small personal selection.
Just wait and see what the near future brings.