This article will summarize the solutions to the problem that sys cannot log on remotely. If you encounter such problems, please refer to them in detail.
SYSDBA cannot log on remotely (does this mean CRT remote logon)
SYSDBA cannot log on remotely in two situations:
1: the prompt is ORA-01017: User Name Password error
C: Userskerry> sqlplus "sys/wgods123 @ gsp as sysdba"
SQL * Plus: Release 11.2.0.1.0 Production on Friday January 11 11:08:07 2013
Copyright (c) 1982,201 0, Oracle. All rights reserved.
ERROR:
ORA-01017: invalid username/password; logon denied
The password and user name are entered correctly. This is the reason for this issue. This is generally caused by the system parameter REMOTE_LOGIN_PASSWORD. The PFILE file contains the REMOTE_LOGIN_PASSWORD parameter to control passwordfile:
When remote_login_passwordfile = NONE, password file verification is disabled. Oracle databases do not allow remote SYSDBA/SYSOPER logon and cannot perform operations such as database start/stop;
Remote_login_passwordfile = exclusive, enable the password file and allow remote login;
Remote_login_passwordfile = shared, multiple databases can share one password file, but only one user can be identified: SYS;
When the password file is lost, use the/NOLOG method to log on and use orapwd to recreate the password file. If the password file is lost, you can use orapwd to recreate the password file.
If you need to start the password file, you must make sure that the value is set to NONE, EXCLUSIVE, and SHARE. Both EXCLUSIVE and SHARE are supported. EXCLUSIVE is an EXCLUSIVE file, and SHARE is a sharing mode in a multi-instance system. This problem is basically caused by this value.
| The Code is as follows: |
Copy code |
SQL> alter system set remote_login_passwordfile = EXCLUSIVE scope = spfile; |
Restart the service to log on remotely with sysdba.
However, there is another case:
Check the value of the system parameter REMOTE_LOGIN_PASSWORD. EXCLUSIVE is found. The password file also exists, but the above error is reported.
| The Code is as follows: |
Copy code |
SQL> SHOW PARAMETER REMOTE_LOGIN_PASSWORD NAME TYPE VALUE ----------------------------------------------------------------------------- Remote_login_passwordfile string EXCLUSIVE |
The password of the SYS account is incorrect.
| The Code is as follows: |
Copy code |
SQL> alter user sys identified by wgods123; |
The problem is solved.
ORA-01031: insufficient privileges
C: Userskerry> sqlplus "sys/wgods123 @ GSP as sysdba"
SQL * Plus: Release 11.2.0.1.0 Production on Friday January 11 14:37:11 2013
Copyright (c) 1982,201 0, Oracle. All rights reserved.
ERROR:
ORA-01031: insufficient privileges
This is generally because your password file is missing or does not exist. For example, if the password file is deleted, the Oracle instance's permissions to sysdba are determined based on this password file, if your user is granted to sysdba, the password and user name of this user are also in this password file. In this way, you are not a role of sysdba. Of course, as sysdba will prompt that the permission is insufficient. Why is this done? If our database is not open, some dynamic views cannot be opened. Therefore, oracle must put the passwords and usernames of these users in an independent file, in this way, the database is not yet open, and there is a place to judge.
How to solve the problem. Let's first judge
| The Code is as follows: |
Copy code |
SQL> SELECT * FROM V $ PWFILE_USERS; USERNAME SYSDBA SYSOPER |
-------------------------------------------
If no record is selected, the password file does not have a token.
The solution here is to recreate the orapwd file.
Use the password file orapwd command
| The Code is as follows: |
Copy code |
| [Oracle @ wgods dbs] $ orapwd file =/database/oracle/product/dbhome/dbs/orapwgsp entries = 4 password = wgods123 force = y |
Here is a tutorial you can refer to http://www.bKjia. c0m/database/Oracle/ipv84.htm