In primo luogo, desidero esportare il database da IBM DB2 AIX in finestre IBM DB2. Sfortunatamente, non posso usare il comando BACKUP e RESTORE a causa di un problema con il sistema operativo diverso. Quindi devo ricorrere al comando db2move .
Avevo esportato lo schema myschema e tutte le tabelle dal database dbemp in remoto IBM DB2 AIX usando questo comando:
db2move dbemp export -sn myschema
Quando eseguivo quel comando, eseguivo l' accesso come utente chiamato dbuser1 .
Genera un mucchio di file nella cartella corrente. Prendo i file nel mio computer locale (Windows) su cui è installato IBM DB2 LUW.
Ora nell'IBM DB2 della mia macchina locale, ho prima lasciato cadere il myschema dello schema esistente utilizzando IBM Data Studio (avevo anche un database dbemp locale ).
Quindi ho importato i file usando questo comando:
db2move dbemp import
Importa correttamente lo schema e le tabelle nel database dbemp locale .
Quando ho fatto le azioni sopra, ero il login come utente winuser1 .
Ho anche un utente locale di nome dbuser1 nella mia macchina locale (windows). In IBM Data Studio, ho creato un profilo di connessione che si collega a dbemp locale utilizzando l' utente dbuser1 e posso sfogliare lo schema myschema e le tabelle, ma non riesco a sfogliare i dati della tabella (ho ricevuto un errore di privilegio). L'utente winuser1 può sfogliare i dati della tabella, ma a scopo di sviluppo, devo collegarmi al database usando l'utente dbuser1 .
Quindi ho scoperto che posso concedere il privilegio a un utente sul tavolo in questo modo:
GRANT ALL ON myschema.table1 TO USER dbuser1
Il problema è che ho 100 tabelle, non voglio digitare quelle righe per ogni tabella. E sfortunatamente, non esiste una soluzione jolly come questa:
GRANT ALL ON myschema.* TO USER dbuser1 -- this doesn't work
Quindi la domanda è: come concedere tutti i privilegi su tutte le tabelle di uno schema a un utente? O esiste una soluzione alternativa migliore? forse copiando tutti i privilegi da winuser1 a dbuser1 ?
db2 grant dataaccess
funziona. Non mi dispiace concederli a tutti gli schemi poiché sono in un ambiente di sviluppo.