2016-10-21 2 views
-1

Installation de DB2 Express C v10.5 et également de la version 11.1 sous Windows 10 PC.Echec de la commande de restauration DB2 sous Windows 10

La sauvegarde de la base de données est réussie mais la restauration se termine par une erreur dans les deux versions.

J'ai également essayé la même chose avec Data Studio 4.1.2, mais là aussi la sauvegarde est réussie mais la commande de restauration est bloquée.

Sauvegarde et restauration des données script à partir Studio-

CONNECT TO SAMPLEDB; 
QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS; 
CONNECT RESET; 
DEACTIVATE DATABASE SAMPLEDB; 
BACKUP DATABASE SAMPLEDB TO "E:\Database" COMPRESS EXCLUDE LOGS WITHOUT PROMPTING; 
CONNECT TO SAMPLEDB ; 
UNQUIESCE DATABASE; 
CONNECT RESET; 

RESTORE DATABASE SAMPLEDB FROM "E:\Database" TAKEN AT 20161020191200 INTO NEWDB WITHOUT PROMPTING; 

Cela fonctionne bien sur Windows 7 et 8.

Est-ce problème spécifique à DB2 Express C sous Windows 10? Quelqu'un peut-il suggérer une solution et/ou où lire sur l'état de compatibilité.

ajouta

Restaurez du studio de données ne donne pas d'erreur, mais est tout simplement bloqué.

Résultat de sauvegarde et de restauration Script-

db2 => CONNECT TO CBL2010 USER db2admin USING ******* 

    Database Connection Information 

Database server  = DB2/NT 10.5.5 
SQL authorization ID = DB2ADMIN 
Local database alias = CBL2010 

db2 => QUIESCE DATABASE IMMEDIATE 
DB20000I The QUIESCE DATABASE command completed successfully. 

db2 => CONNECT RESET 
DB20000I The SQL command completed successfully. 

db2 => BACKUP DB CBL2010 USER db2admin USING ******* to E:\Backup COMPRESS WITHOUT PROMPTING 

Backup successful. The timestamp for this backup image is : 20161024162942 

db2 => CONNECT TO CBL2010 USER db2admin USING ******* 

    Database Connection Information 

Database server  = DB2/NT 10.5.5 
SQL authorization ID = DB2ADMIN 
Local database alias = CBL2010 

db2 => UNQUIESCE DATABASE 
DB20000I The UNQUIESCE DATABASE command completed successfully. 

db2 => CONNECT RESET 
DB20000I The SQL command completed successfully. 

db2 => RESTORE DB CBL2010 USER db2admin USING ******* FROM E:\Backup TAKEN AT 20161024162942 INTO CBLBKUP WITHOUT PROMPTING 
SQL1092N The requested command or operation failed because the user ID does 
not have the authority to perform the requested command or operation. User 
ID: "XAXTRANET". SQLSTATE=00000 

Ici, je fournis « db2admin » comme l'utilisateur, mais étonnamment l'erreur est pour l'utilisateur connecté « XAXTRANET ».

Les utilisateurs connectés et fournis disposent tous deux des droits d'administrateur PC.

et comme par "get dbm cfg commande, le groupe sysadm n'est pas défini -

SYSADM group name      (SYSADM_GROUP) = 
SYSCTRL group name      (SYSCTRL_GROUP) = 
SYSMAINT group name     (SYSMAINT_GROUP) = 
SYSMON group name      (SYSMON_GROUP) = 
+0

Ne voyez aucune erreur. – mustaccio

+0

@mustaccio Votre sauvegarde et votre restauration ont-elles bien fonctionné sous Windows10? Sur Data Studio, la commande de restauration est bloquée et, via la ligne de commande, elle génère une erreur d'autorité. – asthac

+1

Ce que je veux dire, c'est que si vous obtenez une erreur, vous devriez la copier-coller dans votre question exactement comme vous le voyez, au lieu de s'attendre à ce que nous devinions ce que c'est. – mustaccio

Répondre

0

L'ID d'autorisation vous indiquez dans le cadre de la commande (RESTORE ... USER db2admin ...) est utilisé pour se connecter à une base de données existante . Puisque vous semblez restaurer une nouvelle base de données (...INTO CBLBKUP...), cette base de données doit d'abord être créée, ce qui nécessite une pièce jointe d'instance, c'est de là que vient l'ID XAXTRANET.

Essayez de connecter à l'instance explicitement avant d'émettre la commande RESTORE:

db2 => ATTACH TO DB2 USER db2admin USING whatever 

Le vous utilisez ci-dessus suppose le nom d'instance par défaut DB2 - changer votre nom d'instance réelle si nécessaire.

+0

Merci .. Cela fonctionne pour moi .. Cependant, je ne comprends pas pourquoi sauvegarde et restauration ne fonctionne pas pour l'utilisateur connecté .. XAXTRANET dans mon cas .. parce que XAXTRANET est aussi SYSADM .. Comme je ont mentionné ci-dessus que SYSADM_GROUP est vide et l'utilisateur est un administrateur de PC .. Une idée à ce sujet ..? – asthac

+0

http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.admin.sec.doc/doc/c0023391.html – mustaccio

+0

Installation de DB2 v11.1 avec fonction de sécurité étendue. Le groupe DB2ADMNS a été créé et aucune valeur n'a été spécifiée pour le paramètre SYSADM_GROUP. Puis j'ai ajouté mon utilisateur au groupe DB2ADMNS. Mon utilisateur est un administrateur PC. Selon le lien ci-dessus - ** le groupe Administrateurs DB2 (DB2ADMNS) est utilisé comme groupe par défaut pour SYSADM, SYSMAINT et SYSCTRL lorsqu'aucune valeur n'est spécifiée pour les paramètres de configuration du gestionnaire de base de données SYSADM_GROUP, SYSMAINT_GROUP et SYSCTRL_GROUP. * * Cependant, mon utilisateur n'est toujours pas capable de créer une base de données. – asthac