解决Oracle登录不能记住密码(oracle不能登录密码)
解决Oracle登录不能记住密码
在使用Oracle数据库过程中,如果每次都需要手动输入登录名和密码,那么会给用户带来很多不便。有时候,在记住账密码后,重新打开Oracle连接时,却发现系统没有记住账密码。这是Oracle的默认设置导致的。本篇文章将介绍如何解决该问题。
解决方法:
1.在Windows环境下,打开以下目录:C:\app\用户名\product\11.2.0\client_1\network\admin(如果没有网络配置文件,可以手动创建一个tnsnames.ora文件,并将其置于此路径下)。
2.在此路径中找到SQLNET.ORA文件,并使用记事本或其他文本编辑器打开。在文件的末尾添加以下文本:
#记住密码
SQLNET.AUTHENTICATION_SERVICES= (NTS)
SQLNET.SECURE_CONTROL = off
注释:SQLNET.AUTHENTICATION_SERVICES 是指定客户端使用的身份验证服务。 “NTS” 表示使用 Windows 免费身份验证服务。
3.保存文件并关闭文本编辑器。
4.在Windows环境下,打开’运行’窗口,输入’cmd’并按回车键,打开CMD命令行。在命令行中输入:
> set oracle_sid = orcl
> sqlplus username/password@orcl
注释:‘set oracle_sid = orcl’是指定Oracle的SID,‘oracle_sid’为Oracle的标识符,‘orcl’为Oracle数据库的识别,可按实际情况进行修改。
5.这时候,SQLPLUS会提示输入用户名,密码,输入正确的用户名和密码后,连接Oracle成功。
6.关闭SQLPLUS,然后再次运行以下Windows的命令行:
> set oracle_sid = orcl
> sqlplus /nolog
注释:‘/nolog’的作用是不在登录时提示输入用户名和密码,直接连接Oracle。
7.此时连接将变为连接,而不是连接,系统会记住上一次的连接信息。
8.现在再次打开SQLPLUS并登录即可实现记住用户名和密码了。
因为设置文件是Oracle的全局设置文件,所以只需要设置一次,所有的Oracle客户端都将自动记住密码。这种方法可应用于Oracle的任何版本和各种操作系统版本。
结论:
使用SQLNET.ORA文件可以帮助Oracle客户端记住登录的用户名和密码。如果Oracle客户端不能记住密码,可以按照上述步骤进行设置。
附:SQLPLUS基础命令
注释:SQLPLUS命令不区分大小写。 / 代表一个选项或一条指令结束标志。
1.启动总线进程:sqlplus /nolog
2.连接到Oracle实例:connect scott/tiger
3.退出总线进程:exit;
4.清空命令窗口:system cls;\ 或者 清除数据行系统。
5.展示表空间状态:select tablespace_name, sum(bytes)/1024/1024 MB_FREE from dba_free_space group by tablespace_name;
6.展示数据文件状态:select file_name,bytes/1024/1024 MB from dba_data_files;
7.展示表空间状态和数据文件状态,并且进行match操作:
set colsep ‘|’
set pagesize 10
set linesize 300
set trimspool on
col tsformat a25
col nmsize a15
col fmsize a25
set head off
set feedback off
spool d:\data.log
select t.tablespace_name nmsize,t.STATUS tsformat,s.bytes/1024/1024 as fmsize,t.contents from dba_tablespaces t,dba_data_files s where t.tablespace_name=s.tablespace_name order by t.tablespace_name;
spool off
8.修改环境变量:set ORACLE_HOME=d:\oracle\product\11.2.0.4\dbhome_1