Zum Inhalt springen

Migratie Databaseusers mit "altem" Passwort


Empfohlene Beiträge

Geschrieben

Hallo,

wiedermal eine Frage rund um die Migratie oracle 8i nach 9i

Users sollen migriert werden in eine andere Datenbank. Hierfuer lege ich die User in der neuen Datenbank neu an.

Hierbei sollen allerdings die Passwoerter die in der alter Datenbank gebraucht werden, mitgenomen werden.

Users lege ich volgendermassen an

# Create other users with TBS xx

for usname in user1 user2 user3

do

echo "create user $usname"

echo "CREATE USER $usname

PROFILE DEFAULT

IDENTIFIED BY xx

DEFAULT TABLESPACE ${DEF_TBS}

TEMPORARY TABLESPACE ${TEMP_TBS}

ACCOUNT UNLOCK;

exit"|

sqlplus -s ${USERNAME}/${PASSWORD} >> $LOG_FILE

done;

Jetzt hat jeder User das Passwort xx.

Nun soll dies angepasst werden, sodass der user sein altes Passwort behalten kann.

Ich habe hier ein beispiel kann damit aber nicht viel anfangen.

Kann mir jemand erklaeren was bei diesem Beispiel passiert? Und wie kann ich es letzendlich gebrauchen?

select 'alter user ' ||username || ' identified by values ' || '''' || password ||''';'

from dba_users where username in ('user1','user2','user3');

Schon mal vielen Dank.

Geschrieben
Ich habe hier ein beispiel kann damit aber nicht viel anfangen.

Kann mir jemand erklaeren was bei diesem Beispiel passiert? Und wie kann ich es letzendlich gebrauchen?

select 'alter user ' ||username || ' identified by values ' || '''' || password ||''';'

from dba_users where username in ('user1','user2','user3');

dieses dynamische SQL "baut" per SELECT eine liste mit 'alter user' statements, und zwar pro user. in der alten DB aufgerufen, spuckt es die alten PW als sogenannter salt aus, welcher dann in der neuen DB mittels "identified by values <und hier das passwort aber nicht im klartext>" die zuvor neu angelegten user ändert.

s'Amstel

Geschrieben

Hallo,

vielen Dank fuer die Erklaerung. Ich verstehe nun was ich als Resultaat erhalte. Gerne wuerde ich noch wissen wie genau diese Liste erstellt wird, dies verstehe ich noch nicht. Wie ist das aufgebaut. Normalerweise habe ich

select spaltenname [, spaltenname][,spaltenname]... from ....

Wie muss ich das verstehen was jetzt anstelle der Spaltennamen steht?

was bedeuten die || ?

Kann ich auf Internet etwas finden, wie ich solche Anweisungen schreiben kann?

Danke und schoene Gruesse,

Geschrieben
Gerne wuerde ich noch wissen wie genau diese Liste erstellt wird, dies verstehe ich noch nicht. Wie ist das aufgebaut. Normalerweise habe ich

select spaltenname [, spaltenname][,spaltenname]... from ....

Wie muss ich das verstehen was jetzt anstelle der Spaltennamen steht?

du kannst in queries ja anstelle von spaltennamen aus realen tabellen so ziemlich alles verwenden, was es gibt: funktionen, proceduren, strings, ausdrücke. du kannst dort mit zahlen und datumsangaben rechnen, etc.

was bedeuten die || ?

die || konkatenieren strings (also hängen diese zusammen). ein

select 'hallo' || 'echen' from dual;
ergibt
ERGEBNIS

halloechen

Kann ich auf Internet etwas finden, wie ich solche Anweisungen schreiben kann?

meine empfehlung: http://orafaq.com/ und von dort aus weitersurfen.

oder mal bei oracle OTN reinschauen. dort liegen auch alle manuals.

s'Amstel

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...