I am new to oracle server 18c (currently taking online course). My problem is sql*plus where I tried to use sqlplus then sys as sysdba (it did not work) and the error appeared below. enter image description here
However, if I use sqlplus / as sysdba (it worked, and I don't know why) enter image description here
I have tried this command: lsnrctl start, but again not working. In addition, I have checked my listener.ora and tnsnames.oraca enter image description here enter image description here
I have attached my environment set up in .bash_profile enter image description here
Please help me this. Thank you
1 Answer 1
If the password contains special characters such as @
, enter the password between double quotes:
$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Mon Nov 11 15:41:40 2019
Version 19.5.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.5.0.0.0
SQL> connect sys/a@abcd as sysdba
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
Warning: You are no longer connected to ORACLE.
SQL> connect sys/"a@abcd" as sysdba
Connected.
SQL>
-
1A bit of explanation. In your failed attempt, you supplied a pswd that contained a '@' which gets interpreted as a delimiter of the connection string, so the password gets shorted, and an invalid connect string is passed. In the successful attempt '/ as sysdba', no username/password was needed because the stand-alone '/' indicates to use OS authentication - trust the OS to have authenticated a user that is a member of the OS 'dba' group.EdStevens– EdStevens2019年11月11日 21:07:47 +00:00Commented Nov 11, 2019 at 21:07
@
character.