对imp中的fromuser参数的偏差理解
这两天执行导入dump文件时总碰到一个问题。 问题现象 : 1. 执行:imp xyz/xxx file=test.dmp log=imp_test.log fromuser=test1 touser=test2ignore=y commit=y buffer=300000000 feedback=10000 注:这个文件dump200G容量。 2. 执行了许久,但最后结果和log
这两天执行导入dump文件时总碰到一个问题。
问题现象:
1. 执行:imp xyz/xxx file=test.dmp log=imp_test.log fromuser=test1 touser=test2 ignore=y commit=y buffer=300000000 feedback=10000
注:这个文件dump>200G容量。
2. 执行了许久,但最后结果和log中记录:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning and Data Mining options
Export file created by EXPORT:V10.02.01 via conventional path
Warning: the objects were exported by TEST1, not by you
import done in ZHS16GBK character set and AL16UTF16 NCHAR character set
. importing TEST1's objects into TEST2
Import terminated successfully without warnings.
3. 但没有任何dump中的数据导入到test2用户中。
原因分析:
首先,其实是对imp命令中的fromuser参数偏差的理解。
[root@vm-vmw4131-t ~]# imp -help
FROMUSER list of owner usernames
imp指令帮助中说明FROMUSER的含义是“属主用户名列表”,相应的,从exp指令帮助中可以看到OWNER参数表示的是相同的含义:
[root@vm-vmw4131-t ~]# exp -help
OWNER list of owner usernames
即该用户指的是对象所属用户。
其次,经过咨询,上述问题中用到的fromuser=test1这个test1用户是执行exp的系统账户,并不是数据库对象所属账户,这就能解释上面问题的原因了:由于dump文件所属的数据对象账户是另外一个账户,不是test1,因此使用imp ... fromuser=test1时,会检索这个文件dump,查找属于test1用户的对象,全文件扫描后,根本没有属于该用户的对象,因此提示“Import terminated successfully without warnings”正常结束。
总结:
1. 这次导入导出时可能根本没实际考虑LANG等字符集环境变量。
2. imp的fromuser指的是对象所属用户,不是执行exp导出的用户。

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)

L'automatisation et la planification des tâches jouent un rôle essentiel dans la rationalisation des tâches répétitives dans le développement de logiciels. Imaginez qu'il y ait un script Python qui doit être exécuté toutes les 5 minutes, par exemple pour obtenir des données d'une API, effectuer un traitement de données ou envoyer des mises à jour périodiques. L’exécution manuelle de scripts aussi fréquemment peut prendre du temps et être sujette aux erreurs. C'est là qu'intervient la planification des tâches. Dans cet article de blog, nous explorerons comment planifier l'exécution d'un script Python toutes les 5 minutes, garantissant qu'il s'exécute automatiquement sans intervention manuelle. Nous discuterons de différentes méthodes et bibliothèques qui peuvent être utilisées pour atteindre cet objectif, vous permettant d'automatiser efficacement les tâches. Un moyen simple d'exécuter un script Python toutes les 5 minutes à l'aide de la fonction time.sleep() consiste à utiliser tim

Nouvelle fonctionnalité de la version PHP5.4 : Comment utiliser les paramètres d'indication de type appelable pour accepter des fonctions ou des méthodes appelables Introduction : La version PHP5.4 introduit une nouvelle fonctionnalité très pratique : vous pouvez utiliser des paramètres d'indication de type appelable pour accepter des fonctions ou des méthodes appelables. Cette nouvelle fonctionnalité permet aux fonctions et méthodes de spécifier directement les arguments appelables correspondants sans vérifications ni conversions supplémentaires. Dans cet article, nous présenterons l'utilisation d'indicateurs de type appelables et fournirons quelques exemples de code,

Comment utiliser Python pour écrire et exécuter des scripts sous Linux Dans le système d'exploitation Linux, nous pouvons utiliser Python pour écrire et exécuter divers scripts. Python est un langage de programmation concis et puissant qui fournit une multitude de bibliothèques et d'outils pour rendre la création de scripts plus facile et plus efficace. Ci-dessous, nous présenterons les étapes de base de l'utilisation de Python pour l'écriture et l'exécution de scripts sous Linux, et fournirons quelques exemples de code spécifiques pour vous aider à mieux le comprendre et l'utiliser. Installer Python

Le i9-12900H est un processeur à 14 cœurs. L'architecture et la technologie utilisées sont toutes nouvelles, et les threads sont également très élevés. Le travail global est excellent et certains paramètres ont été améliorés et peuvent apporter aux utilisateurs une excellente expérience. . Examen de l'évaluation des paramètres du i9-12900H : 1. Le i9-12900H est un processeur à 14 cœurs, qui adopte l'architecture q1 et la technologie de processus de 24 576 Ko, et a été mis à niveau vers 20 threads. 2. La fréquence maximale du processeur est de 1,80 ! 5,00 GHz, ce qui dépend principalement de la charge de travail. 3. Par rapport au prix, il est très approprié. Le rapport qualité-prix est très bon et il convient très bien à certains partenaires qui ont besoin d'une utilisation normale. Évaluation des paramètres du i9-12900H et scores de performance

La vérification de sécurité des types de paramètres C++ garantit que les fonctions n'acceptent que les valeurs des types attendus via des vérifications au moment de la compilation, des vérifications au moment de l'exécution et des assertions statiques, évitant ainsi tout comportement inattendu et les plantages du programme : Vérification du type au moment de la compilation : le compilateur vérifie la compatibilité des types. Vérification du type d'exécution : utilisez Dynamic_cast pour vérifier la compatibilité des types et lancez une exception s'il n'y a pas de correspondance. Assertion statique : affirmer les conditions de type au moment de la compilation.

Les fonctions hyperboliques sont définies à l'aide d'hyperboles au lieu de cercles et sont équivalentes aux fonctions trigonométriques ordinaires. Il renvoie le paramètre de rapport dans la fonction sinus hyperbolique à partir de l'angle fourni en radians. Mais faites le contraire, ou en d’autres termes. Si nous voulons calculer un angle à partir d’un sinus hyperbolique, nous avons besoin d’une opération trigonométrique hyperbolique inverse comme l’opération sinus hyperbolique inverse. Ce cours montrera comment utiliser la fonction sinus hyperbolique inverse (asinh) en C++ pour calculer des angles en utilisant la valeur du sinus hyperbolique en radians. L'opération arc sinus hyperbolique suit la formule suivante -$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})}, Où\:In\:is\:logarithme naturel\:(log_e\:k)

Le test de Brown-Forsythe est un test statistique utilisé pour déterminer si les variances de deux groupes ou plus sont égales. Le test de Levene utilise l'écart absolu par rapport à la moyenne, tandis que le test de Brown-Forsythe utilise l'écart par rapport à la médiane. L'hypothèse nulle utilisée dans le test est la suivante - H0 : Les variances des groupes (population) sont égales. L'hypothèse alternative est que les variances ne sont pas égales. - H1 : Les variances des groupes (population) ne sont pas égales. effectuer le test, nous calculons la médiane de chaque groupe et sa corrélation avec la médiane L'écart absolu du nombre de chiffres. Nous calculons ensuite la statistique F en fonction de la variance de ces écarts. Supposons que la statistique F calculée soit supérieure à la valeur critique dans le tableau de distribution F. Dans ce cas, nous rejetons l’hypothèse nulle et concluons que les variances des groupes ne sont pas égales. En Python, sc

Les paramètres de référence dans les fonctions C++ (essentiellement les alias de variable, la modification de la référence modifie la variable d'origine) et les paramètres de pointeur (stockage de l'adresse mémoire de la variable d'origine, modification de la variable en déréférençant le pointeur) ont des utilisations différentes lors du passage et de la modification de variables. Les paramètres de référence sont souvent utilisés pour modifier les variables d'origine (en particulier les grandes structures) afin d'éviter une surcharge de copie lorsqu'elles sont transmises aux constructeurs ou aux opérateurs d'affectation. Les paramètres de pointeur sont utilisés pour pointer de manière flexible vers des emplacements de mémoire, implémenter des structures de données dynamiques ou transmettre des pointeurs nuls pour représenter des paramètres facultatifs.
