DB2 - Instance
introduction
Une instance est un environnement logique pour DB2 Database Manager. En utilisant l'instance, vous pouvez gérer les bases de données. En fonction de nos besoins, vous pouvez créer plusieurs instances sur une seule machine physique. Le contenu du répertoire Instance est:
- Fichier de configuration du gestionnaire de base de données
- Répertoire de la base de données système
- Répertoire des nœuds
- Fichier de configuration du nœud [db2nodes.cfg]
- Fichiers de débogage, fichiers de vidage
Pour DB2 Database Server, l'instance par défaut est «DB2». Il n'est pas possible de modifier l'emplacement du répertoire d'instance après sa création. Une instance peut gérer plusieurs bases de données. Dans une instance, chaque base de données a un nom unique, son propre ensemble de tables de catalogue, de fichiers de configuration, d'autorités et de privilèges.
Architecture de l'instance dans le produit DB2
Plusieurs instances
Vous pouvez créer plusieurs instances dans un DB2Server sous Linux, UNIX et Windows. Il est possible d'installer plusieurs serveurs DB2 sur une machine physique.
Créer une instance sous Linux
Vous pouvez créer plusieurs instances sous Linux et UNIX si DB2 Server est installé en tant qu'utilisateur root. Une instance peut s'exécuter simultanément sous Linux et UNIX indépendamment. Vous pouvez travailler dans une seule instance du gestionnaire de base de données à la fois.
Un dossier Instance contient des fichiers et des dossiers de configuration de base de données. Le répertoire d'instance est stocké à différents emplacements sur Windows en fonction des versions du système d'exploitation.
Liste des instances
La commande suivante est utilisée pour lister les instances:
db2ilist
Cette commande répertorie toutes les instances disponibles sur un système.
Syntax:
db2ilist
Example:[Pour voir combien d'instances sont créées dans la copie DB2]
db2ilist
Output:
db2inst1
db2inst2
db2inst3
Commandes d'environnement d'instance
Ces commandes sont utiles pour travailler avec la disposition des instances dans DB2 CLI.
Obtenir l'instance
Cette commande affiche les détails de l'instance en cours d'exécution.
Syntax:
db2 get instance
Example:[Pour voir l'instance actuelle qui a activé l'utilisateur actuel]
db2 get instance
Output:
The current database manager instance is : db2inst1
Définir l'instance
Pour démarrer ou arrêter le gestionnaire de base de données d'une instance sur DB2 UDB, la commande suivante est exécutée pour l'instance actuelle.
Syntax:
set db2instance=<instance_name>
Example:[Pour organiser l'environnement «db2inst1» pour l'utilisateur actuel]
set db2instance=db2inst1
db2start
En utilisant cette commande, vous pouvez démarrer une instance. Avant cela, vous devez exécuter «set instance».
Syntax:
db2start
Example:[Pour démarrer une instance]
db2start
Output:
SQL1063N DB2START processing was successful
db2stop
À l'aide de cette commande, vous pouvez arrêter une instance en cours d'exécution.
Syntax:
db2stop
Output:
SQL1064N DB2STOP processing was successful.
Créer une instance
Voyons comment créer une nouvelle instance.
db2icrt
Si vous souhaitez créer une nouvelle instance, vous devez vous connecter avec root. L'ID d'instance n'est pas un ID racine ou un nom racine.
Voici les étapes pour créer une nouvelle instance:
Step1: Créez un utilisateur du système d'exploitation par exemple.
Syntax:
useradd -u <ID> -g <group name> -m -d <user location> <user name>
-p <password>
Example: [Pour créer un utilisateur par exemple avec le nom 'db2inst2' dans le groupe 'db2iadm1' et le mot de passe 'db2inst2']
useradd -u 1000 -g db2iadm1 -m -d /home/db2inst2 db2inst2 -p db2inst2
Step2: Accédez au répertoire d'instance DB2 dans l'utilisateur root pour créer une nouvelle instance.
Location:
cd /opt/ibm/db2/v10.1/instance
Step3: Créez une instance en utilisant la syntaxe ci-dessous:
Syntax:
./db2icrt -s ese -u <inst id> <instance name>
Example: [Pour créer une nouvelle instance 'db2inst2' dans l'utilisateur 'db2inst2' avec les fonctionnalités de 'ESE' (Enterprise Server Edition)]
./db2icrt -s ese -u db2inst2 db2inst2
Output:
DBI1446I The db2icrt command is running, please wait.
….
…..
DBI1070I Program db2icrt completed successfully.
Organisation du port de communication et de l'hôte d'une instance
Modifiez le fichier / etc / services et ajoutez le numéro de port. Dans la syntaxe donnée ci-dessous, «inst_name» indique le nom de l'instance et «inst_port» indique le numéro de port de l'instance.
Syntax:
db2c_<inst name> <inst_port>/tcp
Example: [Ajout du numéro de port '50001 / tcp' pour l'instance 'db2inst2' avec la variable 'db2c_db2inst2' dans le fichier 'services']
db2c_db2inst2 50001/tcp
Syntax 1: [Mettre à jour la configuration du gestionnaire de base de données avec le nom du service. La syntaxe suivante 'svcename' indique le nom du service d'instance et 'inst_name' indique le nom de l'instance]
db2 update database manager configuration using svcename db2c_&<inst_name>
Example 1: [Mise à jour de la configuration DBM avec la variable svcename avec la valeur 'db2c_db2inst2' pour l'instance 'db2inst2'
db2 update database manager configuration using svcename db2c_db2inst2
Output
DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed successfully.
Syntax 2: définir le protocole de communication «tcpip» pour l'instance actuelle
db2set DB2COMM=tcpip
Syntax 3: [Arrêt et démarrage de l'instance actuelle pour obtenir les valeurs mises à jour de la configuration du gestionnaire de base de données]
db2stop
db2start
Mettre à jour une instance
Vous pouvez mettre à jour une instance à l'aide de la commande suivante:
db2iupdt
Cette commande est utilisée pour mettre à jour l'instance dans la même version de version. Avant d'exécuter cette commande, vous devez arrêter le gestionnaire de base de données d'instance à l'aide de la commande «db2stop». La syntaxe ci-dessous "nom_inst" indique le nom de l'instance de serveur db2 précédemment publiée ou installée, que vous souhaitez mettre à jour vers une version plus récente ou une version de serveur db2 installée.
Syntax 1: Pour mettre à jour une instance en mode normal
db2iupdt <inst_name>
Example1:
./db2iupdt db2inst2
Syntax 2: Pour mettre à jour une instance en mode débogage
db2iupdt -D <inst_name>
Example
db2iupdt -D db2inst2
Mettre à niveau une instance
Vous pouvez mettre à niveau une instance de la version précédente de la copie DB2 vers la version actuelle nouvellement installée de la copie DB2.
db2iupgrade
Sur les systèmes Linux ou UNIX, cette commande se trouve dans le répertoire DB2DIR / instance. Dans les syntaxes suivantes, "nom_inst" indique la version précédente de l'instance DB2 et "nom_inst" indique l'utilisateur de l'instance de copie DB2 de la version actuellement installée.
Syntax 2:
db2iupgrade -d -k -u <inst_username> <inst_name>
Example:
db2iupgrade -d -k -u db2inst2 db2inst2
Command Parameters:
-d : Active le mode de débogage.
-k : Conserve le type d'instance de pré-mise à niveau s'il est pris en charge dans la copie DB2, à partir de laquelle vous exécutez cette commande.
Si vous utilisez la commande Super User (su) sous Linux pour db2iupgrade, vous devez lancer la commande «su» avec l'option «-».
Supprimer une instance
Vous pouvez déposer ou supprimer l'instance, qui a été créée par la commande «db2icrt».
db2idrop
Sur les systèmes d'exploitation Linux et UNIX, cette commande se trouve dans le répertoire DB2_installation_folder / instance.
Syntax: [dans la syntaxe suivante, 'inst_username' indique le nom d'utilisateur de l'instance et 'inst_name' indique le nom de l'instance]
db2idrop -u <inst_username> <inst_name>
Example: [Pour supprimer db2inst2]
./db2idrop -u db2inst2 db2inst2
Utilisation d'autres commandes avec instance
Commande pour savoir sur quelle instance DB2 nous travaillons actuellement.
Syntax 1: [pour vérifier l'instance actuelle activée par le gestionnaire de base de données]
db2 get instance
Output:
The current database manager instance is: db2inst1
Syntax 2: [Pour voir l'instance actuelle avec les bits d'exploitation et la version de version]
db2pd -inst | head -2
Example:
db2pd -inst | head -2
Output:
Instance db2inst1 uses 64 bits and DB2 code release SQL10010
Syntax 3: [Pour vérifier le nom de l'instance en cours de fonctionnement]
db2 select inst_name from sysibmadm.env_inst_info
Example:
db2 select inst_name from sysibmadm.env_inst_info
Output:
INST_NAME --------------------------------------
db2inst1
1 record(s) selected.
Syntax: [Pour définir une nouvelle instance par défaut]
db2set db2instdef=<inst_name> -g
Example: [Pour mettre en tableau l'instance nouvellement créée comme instance par défaut]
db2set db2instdef=db2inst2 -g