Ensemble de paramètres Oracle et paramètres de réinitialisation
Exemples réels de définition et de réinitialisation dans le paramétrage Oracle
Environnement : Oracle 10.2.0.5 RAC
Exigences : le aq_tm_processes du nœud 1 doit être restauré à sa valeur par défaut et les paramètres du nœud 2 doivent rester inchangés
- 1. Créez un environnement de test
- 2. Plan de test
- 3.Résumé
Introduction au contexte :
Vous pouvez trouver le paramètre aq_tm_processes dans le fichier officiel 10.2. Vous pouvez voir que la valeur par défaut de ce paramètre est 0. Appelons-le 0 par défaut.
Ensuite, nous avons en fait constaté que l'effet de ce 0 par défaut est complètement différent de celui du réglage manuel de son SET sur 0.
En communiquant à ce sujet avec des collègues, j'ai finalement appris un détail technique :
Dans Oracle, utiliser SET pour définir les valeurs des paramètres vous évite en fait beaucoup de travail. Si vous souhaitez restaurer la valeur par défaut d'Oracle, le moyen le plus efficace consiste à RÉINITIALISER la valeur, afin que tout suive la conception par défaut d'Oracle.
En regardant le scénario actuel en particulier, si vous définissez le paramètre aq_tm_processes sur 0, il est complètement différent du 0 par défaut d'origine.
S'il est défini sur 0, tous les processus de travail q00 seront arrêtés et ne seront pas redémarrés. S'il est 0 par défaut, le processus de travail q00 peut être démarré.
Le contenu des paramètres actuellement produits est similaire à celui-ci, avec les paramètres globaux et les paramètres de l'instance 1, comme suit :
*.aq_tm_processes=1 jy1.aq_tm_processes=0
Nous savons que la priorité de définition des instances est élevée, ce qui signifie que l'effet de ce paramètre est que le paramètre de l'instance 1 est 0 et le paramètre de l'instance 2 est 1.
Autrement dit : l'instance 1 ne peut pas démarrer le processus de travail q00, mais l'instance 2 peut démarrer le processus de travail q00.
Construire un environnement de test pour simuler la production :
Réglez d'abord aq_tm_processes sur 1 :
alter system set aq_tm_processes = 1 scope=both sid='*'; --create pfile='/tmp/pfile11.ora' from spfile;
À ce stade, il y aura les paramètres suivants dans le fichier de paramètres :
*.aq_tm_processes=1
Définissez aq_tm_processes de l'instance 1 sur 0
alter system set aq_tm_processes = 0 scope=both sid='jy1'; --create pfile='/tmp/pfile12.ora' from spfile;
À ce stade, il y aura les paramètres suivants dans le fichier de paramètres :
*.aq_tm_processes=1 jy1.aq_tm_processes=0
À ce stade, la situation actuelle de l'environnement de production est simulée. Jetons un coup d'œil au processus opérationnel réel :
SQL> SQL> alter system set aq_tm_processes = 1 scope=both sid='*'; System altered. SQL> create pfile='/tmp/pfile11.ora' from spfile; File created. SQL> show parameter aq
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ aq_tm_processes integer 1 SQL> !ps -ef|grep q00 oracle 1462 27385 0 15:27 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00 oracle 1464 1462 0 15:27 pts/1 00:00:00 grep q00 oracle 26534 1 0 15:08 ? 00:00:00 ora_q002_jy1 oracle 31538 1 0 15:21 ? 00:00:00 ora_q000_jy1
SQL> SQL> alter system set aq_tm_processes = 0 scope=both sid='jy1'; System altered. SQL> create pfile='/tmp/pfile12.ora' from spfile; File created. SQL> show parameter aq
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ aq_tm_processes integer 0 SQL> !ps -ef|grep q00 oracle 2044 27385 0 15:28 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00 oracle 2046 2044 0 15:28 pts/1 00:00:00 grep q00
SQL>
Vous pouvez voir qu'après l'avoir défini sur 0, le processus q00 disparaît Même si l'instance est redémarrée, le processus q00 ne démarrera plus.
Ce que nous devons faire maintenant est de restaurer les aq_tm_processes du nœud 1 par défaut sans modifier les paramètres du nœud 2.
alter system reset aq_tm_processes scope=spfile sid='jy1'; create pfile='/tmp/pfile13.ora' from spfile;
Redémarrer la vérification du nœud 1 ? Confirmer si les exigences peuvent être respectées ?
Les opérations spécifiques réelles sont les suivantes :
SQL> alter system reset aq_tm_processes scope=spfile sid='jy1'; System altered. SQL> create pfile='/tmp/pfile13.ora' from spfile; File created. SQL> show parameter aq
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ aq_tm_processes integer 0 SQL> !ps -ef|grep q00 oracle 3801 27385 0 15:32 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00 oracle 3803 3801 0 15:32 pts/1 00:00:00 grep q00
SQL> startup force ORACLE instance started. Total System Global Area 599785472 bytes Fixed Size 2098112 bytes Variable Size 301993024 bytes Database Buffers 289406976 bytes Redo Buffers 6287360 bytes Database mounted. Database opened. SQL> show parameter aq
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ aq_tm_processes integer 1 SQL> !ps -ef|grep q00 oracle 4228 1 0 15:33 ? 00:00:00 ora_q000_jy1 oracle 4232 1 0 15:33 ? 00:00:00 ora_q002_jy1 oracle 5021 27385 0 15:35 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00 oracle 5023 5021 0 15:35 pts/1 00:00:00 grep q00
SQL>
Comme vous pouvez le constater, la réponse est évidemment : non.
Parce que cela ne réinitialisera que les paramètres de l'instance 1, mais comme il y avait un paramètre global *�� auparavant, vous constaterez que le paramètre aq_tm_processes sera 1 après le redémarrage de l'instance 1.
En d'autres termes, si les paramètres de l'instance 1 sont supprimés, les paramètres globaux seront naturellement suivis.
Avec la base ci-dessus, nous avons l'idée de mettre en œuvre les exigences :
Pensons-y : si nous réinitialisons les paramètres globaux, cela affectera les paramètres précédents du nœud 2. De cette façon, nous ne pouvons définir la valeur du nœud 2 que séparément, puis réinitialiser les paramètres globaux.
alter system set aq_tm_processes = 1 scope=both sid='jy2'; --create pfile='/tmp/pfile14.ora' from spfile; alter system reset aq_tm_processes scope=spfile sid='*'; --create pfile='/tmp/pfile15.ora' from spfile;
Redémarrer la vérification du nœud 1 ? ? Confirmer si les exigences peuvent être respectées ?
Les opérations spécifiques réelles sont les suivantes :
SQL> alter system set aq_tm_processes = 1 scope=both sid='jy2'; System altered. SQL> create pfile='/tmp/pfile14.ora' from spfile; File created. SQL> alter system reset aq_tm_processes scope=spfile sid='*'; System altered. SQL> create pfile='/tmp/pfile15.ora' from spfile; File created. SQL> startup force ORACLE instance started.
Total System Global Area 599785472 bytes Fixed Size 2098112 bytes Variable Size 301993024 bytes Database Buffers 289406976 bytes Redo Buffers 6287360 bytes Database mounted. Database opened.
SQL> show parameter aq NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ aq_tm_processes integer 0 SQL> !ps -ef|grep q00 oracle 7446 1 1 15:40 ? 00:00:00 ora_q000_jy1 oracle 7448 1 0 15:40 ? 00:00:00 ora_q001_jy1 oracle 7450 1 0 15:40 ? 00:00:00 ora_q002_jy1 oracle 7452 1 0 15:40 ? 00:00:00 ora_q003_jy1 oracle 7480 27385 0 15:41 pts/1 00:00:00 /bin/bash -c ps -ef|grep q00 oracle 7482 7480 0 15:41 pts/1 00:00:00 grep q00 SQL>
On constate que la réponse vérifiée par le test de fonctionnement réel est conforme à l'attente : oui.
Remarque : toutes les étapes permettant de créer un fichier pfile peuvent être supprimées. A cette époque, j'ajoutais cette opération après chaque étape car je voulais confirmer si la théorie était correcte.
Pour résumer, dans l'environnement client réel, les trois étapes suivantes doivent être suivies pour répondre aux exigences :
--保障节点2的设置不变 alter system set aq_tm_processes=1 scope=spfile sid='jy2'; --reset节点1的设置 alter system reset aq_tm_processes scope=spfile sid='jy1'; --reset全局的设置 alter system reset aq_tm_processes scope=spfile sid='*';
Résumé des points de connaissances dans cet article : En fait, il vous suffit de comprendre les 3 points de connaissances suivants :
L'opération de réinitialisation supprime simplement cette valeur du fichier spfile ;
Les paramètres d'un certain niveau d'instance ont une priorité plus élevée que les paramètres globaux ;
Notez qu'Oracle fait en réalité beaucoup moins pour les valeurs des paramètres SET. Une compréhension simple est que la valeur par défaut 0 est différente du paramètre 0.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les principales différences entre Centos et Ubuntu sont: l'origine (Centos provient de Red Hat, pour les entreprises; Ubuntu provient de Debian, pour les particuliers), la gestion des packages (Centos utilise Yum, se concentrant sur la stabilité; Ubuntu utilise APT, pour une fréquence de mise à jour élevée), le cycle de support (CentOS fournit 10 ans de soutien, Ubuntu fournit un large soutien de LT tutoriels et documents), utilisations (Centos est biaisé vers les serveurs, Ubuntu convient aux serveurs et aux ordinateurs de bureau), d'autres différences incluent la simplicité de l'installation (Centos est mince)

Docker utilise les fonctionnalités du noyau Linux pour fournir un environnement de fonctionnement d'application efficace et isolé. Son principe de travail est le suivant: 1. Le miroir est utilisé comme modèle en lecture seule, qui contient tout ce dont vous avez besoin pour exécuter l'application; 2. Le Système de fichiers Union (UnionFS) empile plusieurs systèmes de fichiers, ne stockant que les différences, l'économie d'espace et l'accélération; 3. Le démon gère les miroirs et les conteneurs, et le client les utilise pour l'interaction; 4. Les espaces de noms et les CGROUP implémentent l'isolement des conteneurs et les limitations de ressources; 5. Modes de réseau multiples prennent en charge l'interconnexion du conteneur. Ce n'est qu'en comprenant ces concepts principaux que vous pouvez mieux utiliser Docker.

Centos sera fermé en 2024 parce que sa distribution en amont, Rhel 8, a été fermée. Cette fermeture affectera le système CentOS 8, l'empêchant de continuer à recevoir des mises à jour. Les utilisateurs doivent planifier la migration et les options recommandées incluent CentOS Stream, Almalinux et Rocky Linux pour garder le système en sécurité et stable.

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Étapes d'installation de CentOS: Téléchargez l'image ISO et Burn Bootable Media; démarrer et sélectionner la source d'installation; sélectionnez la langue et la disposition du clavier; configurer le réseau; partitionner le disque dur; définir l'horloge système; créer l'utilisateur racine; sélectionnez le progiciel; démarrer l'installation; Redémarrez et démarrez à partir du disque dur une fois l'installation terminée.

La politique de sauvegarde et de récupération de GitLab dans le système CentOS afin d'assurer la sécurité et la récupérabilité des données, Gitlab on CentOS fournit une variété de méthodes de sauvegarde. Cet article introduira plusieurs méthodes de sauvegarde courantes, paramètres de configuration et processus de récupération en détail pour vous aider à établir une stratégie complète de sauvegarde et de récupération de GitLab. 1. MANUEL BACKUP Utilisez le Gitlab-RakegitLab: Backup: Créer la commande pour exécuter la sauvegarde manuelle. Cette commande sauvegarde des informations clés telles que le référentiel Gitlab, la base de données, les utilisateurs, les groupes d'utilisateurs, les clés et les autorisations. Le fichier de sauvegarde par défaut est stocké dans le répertoire / var / opt / gitlab / backups. Vous pouvez modifier / etc / gitlab

Le support de disque dur CentOS est divisé en étapes suivantes: Déterminez le nom du périphérique du disque dur (/ dev / sdx); créer un point de montage (il est recommandé d'utiliser / mnt / newdisk); Exécutez la commande Mount (mont / dev / sdx1 / mnt / newdisk); modifier le fichier / etc / fstab pour ajouter une configuration de montage permanent; Utilisez la commande umount pour désinstaller l'appareil pour vous assurer qu'aucun processus n'utilise l'appareil.

Une fois CentOS arrêté, les utilisateurs peuvent prendre les mesures suivantes pour y faire face: sélectionnez une distribution compatible: comme Almalinux, Rocky Linux et CentOS Stream. Migrez vers les distributions commerciales: telles que Red Hat Enterprise Linux, Oracle Linux. Passez à Centos 9 Stream: Rolling Distribution, fournissant les dernières technologies. Sélectionnez d'autres distributions Linux: comme Ubuntu, Debian. Évaluez d'autres options telles que les conteneurs, les machines virtuelles ou les plates-formes cloud.
