Exadata: How to rename grid disks

December 11th, 2012 No comments


Just a short how to rename grid disks (and keep the size). In the example below the grid disks name contained a typo ‘FALSH02’ and had to be renamed to ‘FLASH02’:

dcli -c exadata01cel01 -l root "cellcli -e drop griddisk ALL prefix=FALSH02 force"
dcli -c exadata01cel01 -l root "cellcli -e creategriddisk ALL HARDDISK prefix=FLASH02"

Sample output:

[root@exadata01db01 ~]# dcli -c exadata01cel01 -l root "cellcli
-e drop griddisk ALL prefix=FALSH02 force"

exadata01cel01: GridDisk FALSH02_CD_00_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_01_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_02_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_03_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_04_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_05_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_06_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_07_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_08_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_09_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_10_exadata01cel01 successfully dropped
exadata01cel01: GridDisk FALSH02_CD_11_exadata01cel01 successfully dropped

[root@exadata01db01 ~]# dcli -c exadata01cel01 -l root "cellcli
-e create griddisk ALL HARDDISK prefix=FLASH02"

exadata01cel01: GridDisk FLASH02_CD_00_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_01_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_02_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_03_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_04_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_05_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_06_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_07_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_08_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_09_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_10_exadata01cel01 successfully created
exadata01cel01: GridDisk FLASH02_CD_11_exadata01cel01 successfully created"


Categories: Oracle in general Tags:

ORA-39123: Data Pump transportable tablespace job aborted / ORA-01240: too many data files to add in one command

September 27th, 2012 No comments
Today i ran into a good example for really really bad error messages: Imagine a tablespace with 720 datafiles (approx 22 TB in total size) which should be transported via transportable tablespace. For this you created a plain, new 11.2 database and you are trying to attach the transportable tablespace:
[oracle@ora1 ~]$ impdp system/manager parfile=import.par
Import: Release - Production on Wed Sep 26 19:55:19 2012
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01":  system/******** parfile=import.par
ORA-39123: Data Pump transportable tablespace job aborted ORA-01240: too many data files to add in one command
Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" stopped due to fatal error at 19:55:22
Categories: Oracle in general Tags:

Query for Tablespace usage with Autoextend

August 23rd, 2012 5 comments

Sine i need to check the maximum size of tablespace with autoextend enabled i write the following query:

set linesize 100
set pagesize 100

                round(SUM(a.bytes)/(1024*1024*1024)) CURRENT_GB,
                round(SUM(decode(b.maxextend, null, A.BYTES/(1024*1024*1024), 
                b.maxextend*8192/(1024*1024*1024)))) MAX_GB,
                (SUM(a.bytes)/(1024*1024*1024) - round(c.Free/1024/1024/1024)) USED_GB,
                round((SUM(decode(b.maxextend, null, A.BYTES/(1024*1024*1024), 
                b.maxextend*8192/(1024*1024*1024))) - (SUM(a.bytes)/(1024*1024*1024) - 
                round(c.Free/1024/1024/1024))),2) FREE_GB,
                round(100*(SUM(a.bytes)/(1024*1024*1024) - 
                round(c.Free/1024/1024/1024))/(SUM(decode(b.maxextend, null, A.BYTES/(1024*1024*1024), 
                b.maxextend*8192/(1024*1024*1024))))) USED_PCT
                dba_data_files a,
                sys.filext$ b,
                               d.tablespace_name ,sum(nvl(c.bytes,0)) Free
                               dba_tablespaces d,
                               DBA_FREE_SPACE c
                               d.tablespace_name = c.tablespace_name(+)
                               group by d.tablespace_name) c
                a.file_id = b.file#(+)
                and a.tablespace_name = c.tablespace_name
GROUP BY a.tablespace_name, c.Free/1024
ORDER BY tablespace_name;

The result looks like this:

------------------------------ ---------- ---------- ---------- ---------- ----------
SYSAUX                                 16         32          1         31          3
SYSTEM                                 16         32          0         32          0
TEST                                   10         11          0      10.85          0
UNDOTBS1                               16      32768          0      32768          0
UNDOTBS2                               16      32768          0      32768          0
UNDOTBS3                               16      32768          0      32768          0
UNDOTBS4                               16      32768          0      32768          0
UNDOTBS5                               16      32768          0      32768          0
UNDOTBS6                               16      32768          0      32768          0
UNDOTBS7                               16      32768          0      32768          0
UNDOTBS8                               16      32768          0      32768          0
USERS                                   1         32          0         32          0


Categories: Oracle in general Tags:

Linux: Configuring iSCSI Multipathing

July 2nd, 2012 No comments

A few days before i posted a short howto how to configure iSCSI multipathing with Nexenta. This post covers the configuration of the linux initiator using iSCSI multipathing.

Before we start a preleminary note: It is a very good idea (i´d call it: “required”) to use separate subnets for each physical interface.  Do NOT use the same subnet accross different network interfaces!

If you do not comply with this simple rule you will end up having problems with so called Arp Flux (also documented here, here, here and so on) which requires further modifications.

For configuring and using iSCSI multipathing the following packages are needed:

  • device-mapper-multipath
  • device-mapper-multipath-libs
  • iscsi-initiator-utils

Our testlab used a VM based on Oracle Enterprise Linux 6 Update 2 with two physical interfaces:

  • eth1:
  • eth3:

Read more…

Categories: UNIX Tags:

Nexenta: Configuring iSCSI Multipath Target with multiple network cards

June 28th, 2012 9 comments

This is a short post about how to configure iSCSI multipathing using Nexenta. I let it is neccessary to document it since the documentation is rather spare about it.

In my lab setup i had a machine with two physically separated interfaces:

  • e1000g0:   and
  • e1000g1:

As you can see both interfaces are on different subnets. Note that it is a very good idea (i´d call it: “required”) to use a separate subnet for each interface.  It will save you a lot of trouble and problems!

If you do not comply with this simple rule you will end up having problems with so called Arp Flux (also documented here, here, here and so on) which requires further modifications.

Note: If you modify and existing installation you only need to execute Step #2 and Step #3. Everything else should already be there.

Read more…

Categories: Oracle in general Tags:

Using ASMLib with Oracle Unbreakable Kernel (UEK)

June 25th, 2012 No comments

Starting with the Oracle Unbreakable Enterprise Linux Kernel (UEK) the ASMlib drivers are now included in the kernel. This means that updating the kernel does not require installing the appropriate kernel modules as well.

In addition to the kernel modules you need the following packages:

  • oracleasm-support
  • oracleasmlib

For Oracle Enterprise Linux “oracleasm-support” can be found on the installation media while “oracleasmlib” is not available on the installation media. “oracleasmlib” can be downloaded over the ULN network (more information here).

If you dont have a ULN account or using Red Hat you can get the freely available packages (for OEL and Red Hat) here.

Categories: Oracle in general Tags:

Nexenta: Convert syspool to AHCI drivers

June 24th, 2012 2 comments

When using Nexenta it is highly recommended to attach the syspool disks via AHCI instead of SATA. Attaching them via SATA might cause I/O errors leading to complete outages. The only way to solve this is to replace the driver with AHCI.

Normally changing the driver for the syspool requires a complete reinstallation. However if you want to avoid this simple follow this guide:

  1. Boot with Nexenta Setup CD; Choose “Rescue System”
  2. when booted import the syspool with:
    zpool import -f syspool
  3. Install boot loader on ALL disks belonging to the syspool, e.g. for the first disk:
    grub-install /dev/rdsk/c0t0d0s0
  4. Export the syspool:
    zpool export syspool
  5. Reboot

Done. The system now uses AHCI drivers.

Categories: Opensolaris, Openstorage Tags:

“Exiting Time2Retain handler because session_reinstatement=1” with LIO (linux-iscsi.org iSCSI implementation)

June 21st, 2012 1 comment

I just migrated my Ubuntu iSCSI storage server to Ubuntu 12.04 which ships with a new iSCSI implementation: LIO (linux-iscsi.org). Aside from the fact that this project lacks a HUGE amount of documentation I want to share this problem with you:

kernel: Exiting Time2Retain handler because session_reinstatement=1

This happens if you access LUNs from more multiple nodes (as required for RAC setups)  while all nodes share the same initiatorname.

The fix is to use different and unique initiatornames for every node.

Categories: Oracle in general Tags:

Your private tape library – a pre-configured virtual machine with MHVTL and iSCSI export capability

May 18th, 2012 7 comments

I am using MHVTL for quite a while now. MHVTL emulates a configurable tape library and stores the data in the file system. Normally when testing i am installing the backup software directly where MHVTL runs. But that only works for simple configurations.

For complex configurations for instance with drive sharing this approach does not work. A few days ago i sumbled accross the idea to export the tape library and the drives via iSCSI. So i made a VM based on Oracle Enterprise Linux 6 Update 2 plus the most recent MHVTL version plus self-compiled tgt to test this. And in fact: It does work without any major problems.

With this blog post i would like to share my VM with all interested people. You can download the VM here (728 MB). The root password is ‘root’.

Read more…

Categories: Networker Tags:

RMAN-10008/RMAN-04006: error from auxiliary database: ORA-12537: TNS:connection closed

March 30th, 2012 No comments

Just a short note:

When doing a “duplicate from active database” with a larger amount of channels you need to set the PROCESSES setting in your parameter file to a reasonable high value (i.e. 500). Otherwise the duplicate will fail with:

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 03/30/2012 13:56:22
RMAN-05501: aborting duplication of target database
RMAN-12001: could not open channel ORA_AUX_DISK_60
RMAN-10008: could not create channel context
RMAN-10003: unable to connect to target database
RMAN-04006: error from auxiliary database: ORA-12537: TNS:connection closed

Categories: Oracle in general Tags: