Oracle provides many utilities to operate the infrastructure and database. Some of them need authentications to access database, but some don't. The bottom line is that if a command need to operate within the database, it will need authentications to access. Therefore, I divided these utilities provided by Oracle into two groups:
- Database-level utilities Commands that need authentications.
- Operating-System-level utilities Commands that don't need authentications.
DB-level utilities
Oracle database-level commands that need DB authentication to operate with:The above commands accept both OS and remote authentications for a sysdba. For example:
Local Authentication
$ sqlplus / as sysdba
$ rman target /
$ dgmgrl /
$ expdp "/ as sysdba" SCHEMAS=...
...
You may also learn something from How to expdp AS SYSDBA.
Remote Authentication
$ sqlplus sys/password@primdb1 as sysdba
$ dgmgrl sys/password@primdb1
$ rman target sys/password@primdb1 auxiliary sys/password@standb1
$ expdp "sys/password@orcl as sysdba" SCHEMAS=...
...
You can also notice that, for exp / imp or expdp / impdp utility, it will be a little tricky on passing the authentication information to the database. A pair of double quotes is needed to wrap the credentials.
OS-level utilities
Most of the utilities in $ORACLE_HOME and $GRID_HOME/bin are operating-system-level ones which can operate the infrastructure on OS and should never touch the data or the structure of the database.
Oracle OS-level commands that do not need DB authentication to operate with:
- asmcmd
- lsnrctl
- tnsping
- emctl
- srvctl
- crsctl
- crs_stat
- etc.
Although they do not need DB authentication, the usability still depend on their respective permission set of OS.