Remarques sur IBM DB2

1. Remarques IBM DB2

1.1. Commandes communes

db2 list db directory
db2 connect to SAMPLE
db2 "select substr(bpname,1,12) as bpname from syscat.bufferpools"

1.2. Utilisation du processeur de ligne de commande Db2

# 输入进入命令
db2

# 进入后
db2 => connect to testdb

Pour en savoir plus : Tutoriel : Utilisation du processeur de ligne de commande Db2

1.3. problème

1.3.1. db2: command not found/SQL10007N Message "-1390" could not be retreived. Reason code: "3".

  • Configuration d'une ligne de commande pour exécuter des commandes Db2 : Linux ou UNIX – Recherche du profil Db2

Si vous avez accès à l'identifiant propriétaire de l'instance, connectez-vous et émettez :

echo $INSTHOME

Sur le serveur, essayez ceci :

cat /etc/passwd |grep db2inst1

Regardez les fichiers .profile, .bash_profileet du propriétaire de l'instance .bashrcpour trouver les lignes ajoutées automatiquement par Db2 lors de l'installation.

Une fois que vous avez le bon emplacement, vous pouvez le remplacer par les lignes ci-dessus dans les fichiers .profile, .bash_profile et/ou .bashrc de chaque utilisateur souhaitant exécuter des commandes Db2 :

if [ -f /db2home/db2inst1/sqllib/db2profile ]; then
    . /db2home/db2inst1/sqllib/db2profile
fi

Utilisez directement la commande :source /db2home/db2inst1/sqllib/db2profile

  • Configuration d'une ligne de commande pour exécuter des commandes Db2 : Windows

Utilisez la procédure suivante :db2cmd.exe db2cmdadmin.exe

PowerShell :set-item -path env:DB2CLP -value "**$$**"

1.3.2. Erreur SQL5001N signalée lorsque db2 modifie dbm cfg. Analyse et solutions

Aujourd'hui, j'avais l'habitude de updatemettre à jour dbm cfg et une erreur SQL5001N s'est produite. Je vais donc l'analyser brièvement et donner une solution :

Commande d'opération :db2 update dbm cfg using DFT_MON_STMT on

Message d'erreur:SQL5001N "KEVIN" does not have the authority to change the database manager configuration file.

kevinC'est le nom d'utilisateur de ma base de données DB2. Évidemment, kevinl'utilisateur n'est pas autorisé à modifier la configuration DBM.

Commençons par présenter les éléments les plus élémentaires :

Autorisations au niveau de l'instance :

  • Autorité administrative la plus élevée du SYSADM, généralement utilisée par le DBA
  • SYSCTRL possède la plus haute autorité de contrôle du système, avec la pleine autorité de SYSMAINT et SYSMON
  • Autorité de contrôle du système secondaire SYSMAINT
  • SYSMON Privilèges administratifs minimaux au niveau de l'instance

Commande Afficher sous Unix/Linux :

db2 get dbm cfg|grep "SYSADM"
db2 get dbm cfg|grep "SYSCTRL"
db2 get dbm cfg|grep "SYSMAINT"

db2 get dbm cfg|grep "SYSMON"

Après avoir pris connaissance des connaissances ci - dessus, vous saurez que la modification de dbm cfg nécessite la plus haute autorité sysadm.

Ensuite, dans mon terminal, j'utilisedb2 get dbm cfg | grep SYSADM

SYSADM group name                        (SYSADM_GROUP) = DB2IADM1

Sachant que seuls les membres DB2IADM1du groupe ont l'autorisation d'exécuter, mon exemple d'utilisateur estdb2inst1 :

Utilisez ensuite la commande terminalid db2inst1

uid=801(db2inst1) gid=901(db2iadm1)=901(db2iadm1),903(db2dadm1)

Il est évident db2inst1que les utilisateurs peuvent effectuer la mise à jour de dbm cfg en utilisant

Utilisez ensuite sula commande pour passer à db2inst1l'utilisateur :su - db2inst1

Enfin, utilisez à nouveau la commande :db2 update dbm cfg using DFT_MON_STMT on

DB20000I  The UPDATE DATABASE MANAGER CONFIGURATION command completed  successfully.

1.4. Pilote DB2 ODBC/CLI

Site IBM

1.5. docker

https://hub.docker.com/r/ibmcom/db2

  • Nom d'utilisateur par défaut :db2inst1
  • Base de données par défaut :testdb

1.6. surveillance/observabilité

IBM DB2

Guess you like

Origin blog.csdn.net/wan212000/article/details/132499746
db2
db2