27 luglio 2007

Data Pump e privilegi

Avete Oracle 10gR1? Passate oltre... Avete 10gR2? Bene. Per operazioni di export/import sarebbe bene avere un utente dedicato con i ruoli EXP_FULL_DATABASE e IMP_FULL_DATABASE, con una quota non trascurabile su qualche tablespace poco usato (ho visto 35 MB per una export).
C'è un problemino: i due ruoli non bastano, serve anche il privilegio SELECT ANY TABLE (nota Metalink 414996.1).
Speriamo che i piccoli problemi di Data Pump vengano risolti completamente nella 11g, visto che permangono nella 10.2.0.3.0.

12 luglio 2007

Sybase SQLAnywhere

Sto provando in questi giorni SQLAnywhere, nella suite IAnywhere, un interessante punto di vista sui software collaborativi per aziende.
A me ovviamente interessa la parte del database, visto che il distributore italiano me ne ha fornito gentilmente una copia su chiavetta USB da 512 MB di ultima generazione, microscopica.
Delizioso il lavoro fatto da Sybase per facilitare al massimo l'installabilità e l'amministrazione del database: la compatibilità con Linux mi pare ottima, visto che l'installazione grafica non ha dato alcun problema né sotto SuSE 10.2/64 né sotto Ubuntu 7.04/64, dove però l'installazione è stata testuale ma del tutto equivalente a quella grafica.
SQLAnywhere praticamente si avvia da un gruppo di icone sul desktop, create automaticamente dall'installazione sia su KDE che Gnome. Questa è una caratteristica molto comoda anche in ambiente server, dove tradizionalmente non si usa il display, ma con le tecnologie attuali (VNC del desktop Gnome e volendo anche Xorg in modalità client) è un peccato non avere l'ambiente grafico, che consente inoltre di avviare job direttamente sul server interessato, senza il timore che la connessione si interrompa.Tra le applicazioni ci sono un monitor del database e una specie di client grafico per fare query. Il resto delle icone sono dedicate all'avvio del database sia in modalità networking che personale. In entrambi i casi all'avvio si può specificare il nome del server e l'unico file del database, a cui corrisponde un unico file di log. Evidentemente anche a Sybase confidano sulla potenza dei filesystem "bigfile" per la gestione dei blocchi fisici su disco, che altrimenti avrebbero limiti di spazio.
Per ora non sono ancora riuscito a creare una tabella con un semplice create table, farò del mio meglio per capire come si fa.
Interessanti le slide della presentazione italiana della versione 10, in cui uno dei punti di forza è l'architettura hot-standby senza manutenzione, fatta da due (o più?) server equivalenti e un arbitro che decide chi è il primario. L'indisponibilità di un server e il suo ripristino come master o hot-backup sono automatici.

RMAN, RAC e channels

Una particolarità interessante di RMAN esclusiva della configurazione a cluster RAC è la possibilità di centralizzare la gestione dei dati di backup.
In generale, per fare il backup del db ci si può collegare ad una delle istanze RAC senza alcun problema, visto che praticamente tutto il database è su storage condiviso.
Ma che cosa succede quando si devono gestire eventuali dati locali come gli archivelog, se non collocati su storage condiviso?
Per queste situazioni si possono allocare dei canali appositi (es. 3 istanze):
RUN
{
ALLOCATE CHANNEL CH1 CONNECT 'user1/pwd1@node1';
ALLOCATE CHANNEL CH2 CONNECT 'user2/pwd2@node2';
ALLOCATE CHANNEL CH3 CONNECT 'user3/pwd3@node3';
BACKUP DATABASE PLUS ARCHIVELOG;
}

Il server process che ha l'accesso ai file ricercati si occuperà della loro gestione. In più si avrà, volendo, il parallelismo del backup. Oracle sceglie inoltre automaticamente il canale più veloce da utilizzare tra quelli disponibili per ogni datafile.

11g è arrivato

Ieri c'è stata la presentazione di Oracle Database 11g. Ho rivisto in streaming quasi metà della presentazione, molto più noiosa degli sfavillanti keynote della Apple.
Le novità comprendono:

  • Real Application Testing: vabbè solita sigla, permette di riprodurre il carico reale di lavoro di un sistema, per scopi di test.

  • Supporto avanzato al partizionamento: già qualche novità c'era stata nella 10g, evidentemente è piaciuta. Molto utile è l'advisor, che crea automaticamente nuove partizioni quando arrivano i nuovi dati.

  • Advanced Compression: finalmente arriva la compressione sia sui dati su disco che nella trasmissione di rete. Stima di compressione: 3x-5x.

  • Sicurezza: miglioramenti generali. Qui effettivamente c'era molto da fare, viste le interfacce un po' ostiche su VPD, encryption, row-level security.

  • Total recall: accesso immediato ai dati storici (presumo senza l'utilizzo di UNDO)


Per tutte queste cose bisognerà vedere l'implementazione in pratica, visto che c'è poco di pratico nelle presentazioni.

09 luglio 2007

Presentazione Oracle 11g

Mercoledì 11 verrà presentata la prossima release di Oracle Database, la 11g.
Nel frattempo leggiamo qualche new feature, anche se penso che l'elenco indicato nell'intervista sia molto incompleto.
Io ho come la sensazione che ci sarà una grossa novità sulla gestione dell'undo... seguendo il ragionamento dei wandering logs di Reiserfs, immagino che sia applicabile il concetto anche all'undo... il tablespace di UNDO potrebbe addirittura sparire, lasciando il posto a una gestione dei blocchi completamente all'interno del proprio tablespace. Staremo a vedere.