simply4you.it simply4you.it

   Home
     Articoli, Tutorial...
       DataBase
         Oracle & SqlServer

Introduzione
Confronto
Sicurezza
Sql
Tip&Trick


Autore
Pablo Gil

E-Mail
ceisasp@inwind.it

Sito 1
Sito 2



Commenta anche tu !  


LINK Oracle
LINK Access/SQL Server
LINK Informix


















   Invia il link di questo articolo ad un amico  Invia ad un amico Visualizza la versione stampabile di questo articolo  Stampa Commenta questo Articolo  Commenta Parlane in Chat  Chat   Parlane sul Forum  Forum

Corsi su Database in aula:
Il Linguaggio SQL, MySQL, Oracle 9i Amministrazione, Oracle 9i Performance e Tuning, Oracle PL/SQL, Oracle Portal 9.0.2, PostgreSQL


Oracle 8-8i e SQL Server 2000 a confronto
Confronto
  Oracle 8i Microsoft SQL Server 2000
Istanza e Database Una istanza corrisponde alla creazione della SGA ed ai processi in Background che girano dentro...
Ad ogni istanza potrà essere collegato un unico Database con gli schema di sistema (SYS, SYSTEM)
Una istanza corrisponde a un server di database; e cioè i servizi MSSQLServer e -eventualmente- SQLServerAgent e MSDTC...
Nella stessa istanza ci saranno sia i cinque database di sistema (master, msdb, model, tempdb e replication) che gli eventuali database utente (anche più di uno)
Collegamento ad altri database Viene realizzato tramite un DATABASE LINK... che può essere pubblico o privato Viene realizzato tramite la stored procedure sp_addlinkedserver oppure in Enterprise Manager, tramite Management -> Linked Server
Files di dati I files di dati (DATAFILES) vengono raggruppati in uno o più TABLESPACES che vengono gestiti in modo indipendente tra di loro I gruppi di dati vengono raggruppati in FILEGROUP, che vengono gestiti in modo globale
Identificazione degli oggetti Un oggetto si identifica in modo univoco con la seguente sintassi: schema.oggetto@database Un oggetto si identifica in modo univoco con la seguente sintassi: server.database.owner.oggetto
Schema Un utente viene associato ad uno schema di oggetti (tabelle, indici, ecc)...
Dentro allo schema di un utente possono esserci oggetti che appartengono ad un altro utente. Si possono usare i sinonimi per non dover essere costretti ad indicare il proprietario di ogni oggetto.
In SQL Server è consigliabile usare l'utente dbo come proprietario di tutti gli oggetti del database in modo da non dover indicare il nome utente del proprietario per più chiarezza vedere la sezione "identificazione degli oggetti".
Indici Oracle permette di usare diversi tipi di indici: Btree, Bitmap, ecc. SQL Server implementa soltanto l'indice Btree
Commit Dopo aver effettuato un comando insert, delete, update; bisogna eseguire il commando COMMIT affinchè questi cambiamenti vengano riportati sul DB. SQL Server è autocommittante (anche se si può cambiare questo comportamento mediante l'istruzione SET AUTOCOMMIT OFF)
Backup e Restore Viene gestito all'esterno del server sia con comandi del sistema operativo che usando l'utility RMAN Viene gestito all'interno del server di database tramite i comandi BACKUP DATABASE, BACKUP LOG e RESTORE DATABASE, RESTORE LOG
Modelli di recupero dei dati Due modi di funzionamento: ARCHIVELOG e NOARCHIVELOG.
A differenza del modo NOARCHIVELOG nel quale i file redo log vengono cancellati per essere riutilizzati in modo ciclico, nel modo ARCHIVELOG il server prima di svuotare i files redo creati durante il funzionamento del database, crea dei files di log che sono la copia dei files redo log prima dello svuotamento. Questa opzione viene attivata mediante 3 parametri nel file di INIT dell'istanza: log archive start, log archive dest e log archive format
Tre modi di funzionamento: semplice, completo e operazioni di massa registrate. Mentre con il metodo SEMPLICE il file di log viene svuotato ad ogni commit, con i metodi RECUPERO DI OPERAZIONI DI MASSA REGISTRATE e COMPLETO questi files non vengono cancellati. La differenza tra di loro è che mentre il metodo COMPLETO registra dentro al file di log tutte le operazioni effettuate dentro al database, il secondo non registra (almeno no completamente) alcune operazioni di caricamento dati come INSERT INTO e BULK COPY.
Kill delle sessioni Si fa col commando ALTER SYSTEM fornendo DUE parametri: ALTER SYSTEM KILL SESSION 'sid, serial' I valori di sid e serial si possono prendere dalla vista v$session... Si fa col commando KILL fornendo UN unico parametro: KILL sid Il valore di sid si puo prendere con la stored procedure sp_who...
Identificare la propria sessione select sid, serial# from v$session where audsid = userenv('sessionid'); select @@sid
Log delle transazioni Sono memorizzati in 2 (o più, se configurati) files di rollback. Quando uno di questi si riempie, Oracle continua a memorizzare i log sull'altro.
Se il database è settato in modo ARCHIVELOG, prima di svuotare il file pieno verrà fatta una copia del file di log che si potrà usare per ripristinare i dati. Altrimenti, se funziona in modo NOARCHIVELOG, si perderà il contenuto del file di log pieno e il database si potrà ripristinare soltanto alla situazione dell'ultimo backup.
Sono memorizzati in 1 (o più, se configurati) files di log. Quando uno di questi si riempie, SQL Server continua a scrivere sul seguente. Se non ci fosse un altro file dove memorizzare i log, il server si blocca (si può svuotare questo file con il comando BACKUP LOG). Per questo motivo, è opportuno configurare il file di log in modo che possa crescere automaticamente al suo riempimento (opzione filegrowth).
Checkpoint Viene gestito dal sistema, ma è anche possibile forzarlo tramite il comando ALTER SYSTEM CHECKPOINT (eventualmente specificando GLOBAL o LOCAL se si lavora in ambiente PARALLEL SERVER). Dalla versione 2000, anche con SQL Server si può forzare il checkpoint tramite il comando CHECKPOINT.
Stringhe di connessione OLE DB "Provider=MSDAORA.1; Datasource=nome del server; User=nome utente ; Password=password" "Provider=SQLOLEDB; Datasource=nome del server; Initial Catalog=nome database ; User=nome utente; Password=password"
Server di standby In Oracle, la trasformazione del server di standby in server di produzione (per esempio dopo un problema al server di produzione), comporta che si dovrà ricreare l'ambiente nel momento in cui si vorrà ripristinare i ruoli. Tramite i comandi BACKUP e RESTORE con l'opzione STANDBY, è possibile creare e cambiare ruolo tra server di produzione e server di standby più volte senza bisogno di ricreare l'ambiente.
Importazione ed Esportazione dei dati In Oracle, l'esportazione si fa tramite il comando Export; mentre l'importazione può essere fatta con i comandi Import (per importare una esportazione fatta con export) oppure SQLloader Microsoft SQL Server ha uno strumento potentissimo chiamato Data Transformation Service che permette di fare sia l'esportazione che l'importazione dei dati in diversi formati (praticamente qualunque formato, basta che sul server sia installato il driver ODBC oppure OLEDB).



   Invia il link di questo articolo ad un amico  Invia ad un amico Visualizza la versione stampabile di questo articolo  Stampa Commenta questo Articolo  Commenta Parlane in Chat  Chat   Parlane sul Forum  Forum