


Opérations de tri, de recyclage et de libération des espaces table de base de données Oracle
Cet article vous apporte des connaissances pertinentes sur Oracle, qui introduit principalement les problèmes liés aux opérations de tri, de recyclage et de libération de l'espace table de la base de données, notamment l'abaissement du niveau d'eau élevé de l'espace table, la libération lors de la suppression, etc. ensemble, j'espère que cela sera utile à tout le monde.
Tutoriel recommandé : "Tutoriel vidéo Oracle"
Lors de l'utilisation d'Oracle pour les tests d'entrée, nous créerons de nombreuses données de test, et après la suppression, le niveau d'eau élevé de l'espace table ne peut toujours pas être automatiquement abaissé , entraînant une occurrence d'espace table. L'apparition de données vides affecte les performances de l'espace table et occupe également trop d'espace de stockage.
1. Réduisez le niveau d'eau élevé de l'espace table
1. Affichez l'espace table et le nom du fichier physique correspondant
Le code est le suivant :
select b.file_id 物理文件号, b.file_name 物理文件名, b.tablespace_name 表空间, b.bytes/1024/1024 大小M, (b.bytes-sum(nvl(a.bytes,0)))/1024/1024 已使用M, substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) 利用率 from dba_free_space a,dba_data_files b where a.file_id=b.file_id group by b.tablespace_name,b.file_id,b.file_name,b.bytes order by b.tablespace_name
En fonction du taux d'utilisation, vous pouvez déterminer intuitivement quels espaces table peuvent être libéré.
2. Videz la corbeille
Le code est le suivant :
-- 清除用户回收站 purge recyclebin; -- 清除全库回收站 purge dba_recyclebin;
Effacez les données laissées lors du processus de suppression.
3. Organisez l'espace table
Le code est le suivant :
alter tablespace tablespace_name coalesce;
Intégrez les fragments de l'espace table pour augmenter la continuité de l'espace table
4 Générez le code RESIZE
Le code est le suivant :
select a.file#,a.name,a.bytes/1024/1024 CurrentMB, ceil(HWM * a.block_size)/1024/1024 ResizeTo, (a.bytes - HWM * a.block_size)/1024/1024 ReleaseMB, 'alter database datafile '''||a.name||''' resize '|| ceil(HWM * a.block_size/1024/1024) || 'M;' ResizeCMD from v$datafile a, (select file_id,max(block_id+blocks-1) HWM from dba_extents where file_id in (select b.file# From v$tablespace a ,v$datafile b where a.ts#=b.ts# and a.name='tablespace_name') group by file_id) b where a.file# = b.file_id(+) and (a.bytes - HWM *block_size)>0 order by 5
Une fois le code ci-dessus exécuté, une réponse correspondante peut être générée. Code SQL de RESIZE de l'espace table, exécutez simplement le code SQL correspondant à ce moment.
2. Libérer lors de la suppression
1. Effacez les données de la table et libérez l'espace de la table
Le code est le suivant :
-- 清空表数据 truncate table table_name; -- 释放表空间 alter table table_name deallocate UNUSED KEEP 0;
Effacez d'abord les données de la table pour le moment, la table n'existe toujours pas. rollback et ne peut pas tronquer une bande. Si vous souhaitez supprimer une table avec une clé étrangère, vous devez d'abord annuler la clé étrangère puis la supprimer
Notez que si KEEP 0 n'est pas ajouté, l'espace table ne sera pas libéré ;
2. Migrer les données de la table
Lorsque les erreurs suivantes se produisent, nous pouvons non seulement les résoudre en organisant l'espace table ou en vidant la corbeille, mais nous pouvons également libérer de l'espace en migrant toutes les données de la table dans l'espace table. à libérer vers d'autres espaces table. Ensuite, migrez-le vers l'espace table d'origine.
--需移动的表数据 select DISTINCT 'alter table '|| owner||'.'||segment_name || ' move tablespace user_test;' from dba_extents where segment_type='TABLE' and file_id=4; --需移动的索引数据 select DISTINCT 'alter index '|| owner||'.'|| segment_name || ' rebuild tablespace user_test;' from dba_extents where segment_type='INDEX' and file_id=4; --需移动的分区表数据 select DISTINCT 'alter table '|| owner||'.'|| segment_name || ' move partition '|| partition_name || ' tablespace user_test;' from dba_extents where segment_type='TABLE PARTITION' and file_id=4; --需移动的分区表索引数据 select DISTINCT 'alter index '|| owner||'.'|| segment_name || ' rebuild partition '|| partition_name || ' tablespace user_test;' from dba_extents where segment_type='INDEX PARTITION' and file_id=4;
Le file_id dans le code ci-dessus peut être comparé et modifié en affichant l'espace table. Une fois le code ci-dessus exécuté, le code SQL généré automatiquement correspondant peut être obtenu à ce moment, le code SQL correspondant peut être exécuté pour migrer. les données du tableau
Tutoriel recommandé : " Tutoriel vidéo Oracle》
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)

Pour interroger la taille de l'espace de table Oracle, suivez les étapes suivantes: Déterminez le nom de l'espace de table en exécutant la requête: sélectionnez Tablespace_name dans dba_tablespaces; Requête la taille de l'espace de table en exécutant la requête: sélectionnez SUM (Bytes) comme total_size, sum (bytes_free) comme disponible_space, sum (bytes) - sum (bytes_free) comme used_space à partir de dba_data_files où tablespace_

Oracle View Encryption vous permet de crypter les données dans la vue, améliorant ainsi la sécurité des informations sensibles. Les étapes incluent: 1) la création de la clé de cryptage maître (MEK); 2) Création d'une vue cryptée, spécifiant la vue et MEK à crypter; 3) Autoriser les utilisateurs à accéder à la vue cryptée. Comment fonctionnent les vues cryptées: lorsqu'un utilisateur interroge pour une vue cryptée, Oracle utilise MEK pour décrypter les données, garantissant que seuls les utilisateurs autorisés peuvent accéder aux données lisibles.

Méthode d'importation de données: 1. Utilisez l'utilitaire SqlLoader: Préparez les fichiers de données, créez des fichiers de contrôle et exécutez SqlLoader; 2. Utilisez l'outil IMP / EXP: les données d'exportation, les données d'importation. Astuce: 1. Chargeur SQL * recommandé pour les ensembles de Big Data; 2. La table cible doit exister et la définition de la colonne correspond; 3. Après l'importation, l'intégrité des données doit être vérifiée.

La création d'une table Oracle implique les étapes suivantes: Utilisez la syntaxe de la table Create pour spécifier les noms de table, les noms de colonne, les types de données, les contraintes et les valeurs par défaut. Le nom du tableau doit être concis et descriptif et ne doit pas dépasser 30 caractères. Le nom de la colonne doit être descriptif et le type de données spécifie le type de données stocké dans la colonne. La contrainte non nulle garantit que les valeurs nulles ne sont pas autorisées dans la colonne, et la clause par défaut spécifie les valeurs par défaut pour la colonne. Contraintes de clé primaire pour identifier l'enregistrement unique du tableau. La contrainte de clé étrangère spécifie que la colonne du tableau fait référence à la clé primaire dans un autre tableau. Voir la création des élèves de la table de l'échantillon, qui contient des clés primaires, des contraintes uniques et des valeurs par défaut.

Il existe trois façons d'afficher les noms d'instance dans Oracle: utilisez le "SQLPlus" et "SELECT INSTRESS_NAME FROM V $ INSTERNE;" Commandes sur la ligne de commande. Utilisez "Show instance_name;" Commande dans SQL * Plus. Vérifiez les variables d'environnement (Oracle_sid sur Linux) via le gestionnaire de tâches du système d'exploitation, Oracle Enterprise Manager ou via le système d'exploitation.

Désinstaller la méthode pour la défaillance de l'installation d'Oracle: Fermez le service Oracle, supprimez les fichiers du programme Oracle et les clés de registre, désinstallez les variables d'environnement Oracle et redémarrez l'ordinateur. Si la désinstallation échoue, vous pouvez désinstaller manuellement à l'aide de l'outil Oracle Universal Disinstal.

Il existe les méthodes suivantes pour obtenir du temps dans Oracle: current_timestamp: renvoie le temps du système actuel, précis en secondes. Systimestamp: plus précis que current_timestamp, aux nanosecondes. Sysdate: renvoie la date du système actuelle, à l'exclusion de la partie d'heure. To_char (sysdate, 'yyy-mm-dd hh24: mi: ss'): convertit la date et l'heure du système actuels en format spécifique. Extrait: extrait une partie spécifique d'une valeur temporelle, comme un an, un mois ou une heure.

Un rapport AWR est un rapport qui affiche les performances de la base de données et les instantanés d'activité. Les étapes d'interprétation comprennent: l'identification de la date et de l'heure de l'instantané d'activité. Consultez un aperçu des activités et de la consommation de ressources. Analyser les activités de session pour trouver des types de session, la consommation de ressources et les événements d'attente. Trouvez des goulots d'étranglement potentiels de performance tels que des instructions SQL lentes, des problèmes de ressources et des problèmes d'E / S. Affichez les événements d'attente, identifiez-les et résolvez-les pour les performances. Analyser les modèles d'utilisation des verrous et de la mémoire pour identifier les problèmes de mémoire qui causent des problèmes de performances.
