Wie bereits mehrfach in den Kommentaren, die Verwendung der erwähnten CONNECT
, RESOURCE
und DBA
Rollen , die von Oracle abgeraten.
Sie müssen sich als SYS verbinden, um Ihre Rolle und die Benutzer zu erstellen, denen diese Rolle zugewiesen wurde. Sie können SQL Developer oder SQL * Plus nach Belieben verwenden. Vergessen Sie nicht, die SYSDBA-Rolle in der Anmeldezeichenfolge anzugeben. Das connect_identifier
verwendet unterschiedliche Syntaxen.
sqlplus sys/<<password>>@<<connect_identifier>> as sysdba
Angenommen, Sie haben einen 12cR1 wie den, der als VM mit dem " Oracle Technology Network Developer Day " bereitgestellt wird . Die Verbindungszeichenfolgen könnten sein (um eine Verbindung zum bereitgestellten PDB herzustellen):
sqlplus sys/oracle@127.0.0.1/orcl as sysdba
sqlplus sys@"127.0.0.1/orcl" as sysdba
Beachten Sie, dass unter Unix die Anführungszeichen maskiert werden müssen, da sie sonst von der Shell verwendet werden. So "
wird \"
.
Anschließend erstellen Sie die Rolle MYROLE
und gewähren ihr andere Rollen oder Berechtigungen. Ich habe fast das Nötigste hinzugefügt, um etwas Interessantes zu tun:
create role myrole not identified;
grant create session to myrole;
grant alter session to myrole;
grant create table to myrole;
Als nächstes erstellen Sie den Benutzer MYUSER
. Die folgende Zeichenfolge, identified by
die das Kennwort ist, unterscheidet zwischen Groß- und Kleinschreibung. Der Rest ist nicht. Sie können auch SQL-getrennte Bezeichner (umgeben von Anführungszeichen "
) anstelle von regulären Bezeichnern verwenden, die in Großbuchstaben konvertiert werden und einigen Einschränkungen unterliegen. Die Quote könnte unlimited
stattdessen sein 20m
.
create user myuser identified by myuser default tablespace users profile default account unlock;
alter user myuser quota 20m on users;
grant myrole to myuser;
Schließlich verbinden Sie sich als Ihr neuer Benutzer.
Bitte beachten Sie, dass Sie auch das Standardprofil ändern oder ein anderes angeben können, um einige Einstellungen wie die Ablaufdauer von Kennwörtern, die Anzahl der zulässigen fehlgeschlagenen Anmeldeversuche usw. anzupassen.
CONNECT
Rolle jedoch über viel mehr Berechtigungen als der Name vermuten lässt. Ich würdeCREATE SESSION
stattdessen viel lieber gewähren .