Combien de temps faudrait-il pour mettre à niveau une base de données Oracle 1T de 10g à 11g?


8

Combien de temps faudrait-il pour mettre à niveau une base de données Oracle contenant des données 1T de 10g à 11g généralement / approximativement? J'ai besoin d'estimer le temps d'arrêt car c'est un prod db. Merci beaucoup!

Réponses:


11

30 à 90 minutes selon les meilleures pratiques d'Oracle pour la mise à niveau . Il s'agit de l'estimation la plus proche que vous obtiendrez compte tenu de toutes les inconnues dans cette situation.

La taille de la base de données importe très peu pour déterminer la durée de la mise à niveau. Voici les principaux facteurs affectant la durée (à partir du blog de mise à niveau d'Oracle.com) :

  • Nombre de composants et d'options de base de données installés - plus il y a de composants / d'options installés, plus les scripts de mise à niveau devront être exécutés, plus cela prendra du temps

  • Statistiques de dictionnaire valides et non périmées - même si la création de statistiques de dictionnaire dans certaines versions plus anciennes d'Oracle n'était pas une idée brillante, car sans le support de l'optimiseur basé sur des règles, le dictionnaire de données doit être analysé. Surtout juste avant une mise à niveau. Sinon, cela se produira pendant la mise à niveau alors que la base de données est démarrée dans un mode de mise à niveau restreint, provoquant des temps d'arrêt supplémentaires.

  • Nombre de lignes en AUD $ si audit_trail est défini sur DB

  • Nombre de synonymes lors de la mise à niveau à partir d'Oracle 9i - les synonymes seront touchés et obtiendront une nouvelle dépendance dans le dictionnaire en DÉPENDANCE $ - s'il y a un nombre élevé (comme 100 000), cela peut prendre du temps

  • Nombre d'objets dans XDB

  • À un taux très faible si COMPATIBLE sera augmenté: nombre de fichiers de données et taille des redologs

Voici quelques facteurs supplémentaires que vous voudrez peut-être considérer qui ne sont pas liés au cœur de la mise à niveau elle-même:

  • Si le script de pré-mise à niveau a été exécuté et les problèmes résolus.
  • Combien d'objets invalides il y a.
  • Si la mise à niveau est en cours (par rapport à Import / Export, Streams, Data Guard, etc.)
  • Si la DBUA ou les scripts sont utilisés pour effectuer la mise à niveau.
  • Si le nouvel Oracle home est préinstallé.
  • Vitesse et débit du disque.
  • Autre activité CPU / disque se produisant en même temps.
  • Mode journal d'archivage.
  • Autres modifications en cours avec la mise à niveau.
  • Si une sauvegarde à froid est nécessaire avant et / ou après la mise à niveau.
  • Tous les ensembles de correctifs ou les correctifs uniques qui seront également appliqués.
  • Combien de vérification de la mise à niveau doit être effectuée avant qu'elle ne soit disponible.

Le facteur le plus important affectant la mise à niveau est probablement l'inconnu. Même lorsque la mise à niveau est pratiquée à l'avance sur un matériel similaire avec des ensembles de données similaires, etc., des choses imprévues peuvent encore se produire et peuvent considérablement affecter la durée. Dans cet esprit, vous devez imiter l'environnement de production aussi étroitement que possible pour les mises à niveau de test. Autrement dit, aussi près que votre budget le permet.

Si l'espace est le problème qui vous empêche de tester la mise à niveau, envisagez de restaurer la base de données dans une zone de test excluant certains des plus grands espaces disque logiques utilisateur. Cela ne vous donnera pas une idée exacte du temps, mais cela devrait vous donner une idée plus précise et vous permettre de travailler à travers plus d'inconnues.


Leigh très réfléchi, vous avez raison. Merci beaucoup!
magqq

5

Vraisemblablement, vous avez une instance de développement et de test de cette base de données exécutée sur un matériel similaire avec un volume de données similaire et les mêmes composants de base de données installés, n'est-ce pas? Et, vraisemblablement, vous allez mettre à niveau ces environnements inférieurs (et tester que les applications qui utilisent cette base de données fonctionnent toujours correctement), n'est-ce pas?

En supposant que ce soit le cas, je prendrais le temps nécessaire pour mettre à niveau la base de données de développement et l'utiliser comme estimation du temps nécessaire pour mettre à niveau les autres instances. Il existe évidemment un certain nombre de facteurs qui déterminent la durée de la mise à niveau réelle. Je suppose que le temps d'arrêt ne devrait probablement être que d'une heure ou deux, mais il vaut mieux utiliser le temps réel nécessaire pour mettre à niveau le dev.


2
supposons qu'il soit dans une boutique bon marché, sans environnement similaire dans l'installation de test / développement qu'en production. Si tel est le cas ... quel est un assez bon conseil? :-)
Marian

1
@Marian - Comme je l'ai dit, ma supposition sans aucune information est d'une heure ou deux. Mais si vous courez dans une boutique bon marché qui n'achète même pas un environnement inférieur adéquat, je remplirais massivement mon estimation car je supposerais que quelque chose irait mal pendant la mise à niveau. Si vous ne dépensez pas pour créer des environnements inférieurs appropriés, vous ne pouvez pas vous attendre à de grands niveaux de disponibilité.
Justin Cave

1
Même si vous avez une plate-forme de développement de merde qui vous donnera un bon numéro de parc de balle pour travailler. Prenez ce nombre et s'il vous semble un peu bas, doublez ou triplez cela et donnez ce nombre à la direction.
mrdenny

3
@Marian - Les sages savent cependant qu'il vaut bien mieux surestimer une fenêtre d'indisponibilité que de la sous-estimer. Si une organisation ne souhaite pas fournir un environnement approprié pour qu'un DBA obtienne des mesures raisonnables, elle doit accepter une fenêtre d'indisponibilité beaucoup plus grande que si les environnements inférieurs étaient correctement provisionnés.
Justin Cave

1
@magqq - La mise à niveau elle-même ne dépend pas normalement des données. Mais comme vous souhaitez généralement une sauvegarde complète avant une mise à niveau, l'étape de réalisation de la sauvegarde dépend fortement de la taille de la base de données.
Justin Cave
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.