在工作中,并不是每天都需要使用数据库,忘记密码的情况是常有的。很多不了解Oracle数据库的新人采用的最常用的方式都是重新安装数据库,实际上并不需要这样,本文提供一种很简单的方法来修改Oracle数据库密码。
在Windows操作系统下,修改Oracle数据库密码的具体步骤如下:
(1)打开SQL Plus工具
以管理权限登录到系统的命令行界面,即DOS界面。然后,以不登录Oracle数据库服务器的方式(即不用输入用户名和密码)打开SQL Plus工具。输入的命令如下所示。
sqlplus /nolog
界面如图1所示。
图1 打开SQL Plus工具
(2)使用管理员用户登录Oracle数据库
在图1所示界面中,以操作系统用户权限登录到Oracle数据库中。输入的命令如下所示。
conn /as sysdba
使用上面的命令即可以管理员身份登录到Oracle数据库中。
(3)修改用户密码
登录到Oracle数据库中,可以修改任意用户的密码,这里以修改“system”用户的密码为例讲解。修改密码的语句如下所示。
alter user system identified by system123
通过下面的语句,即可将“system”用户名的密码修改为“system123”。
(4)验证密码修改效果
在完成用户密码修改后,即可使用修改后的密码登录Oracle数据库了。连接Oracle数据库的命令如下所示。
conn system/system123
使用上面的命令即可重新连接到Oracle服务器。效果如图2所示。
图2 验证修改密码后的效果
至此,完成了在使用Oracle数据库时忘记密码处理。
在使用上面介绍的方法修改密码时,容易出现的问题有2个:
(1)连接数据库时出现协议适配器错误
在使用“conn /as sysdba”命令连接Oracle数据库时,出现“协议适配器错误”提示,界面如图3所示。
图3 协议适配器错误
出现图中的提示是因为Oracle数据库的环境变量(oracle_sid)没有配置好,在DOS窗口中也可以完成环境变量的配置,使用的命令如下所示。
set oracle_sid=orcl
这里的“orcl”是Oracle数据库的服务器名。
(2)没有权限连接Oracle数据库
使用“conn /as sysdba”命令连接Oracle数据库,出现如图4所示的错误界面。
图4 禁用操作系统认证方式登录
之所以不能使用操作系统用户登录Oracle数据库,是因为在配置文件sqlnet.ora中的属性SQLNET.AUTHENTICATION_SERVICES设置的值为(NONE),即不可以使用操作系统认证方式登录Oracle数据库。如果要启用操作系统认证方式则该参数的值更改成(NTS)即可。配置文件中的内容如图5所示。
图5 sqlnet.ora配置文件
【本文为51CTO专栏作者“秦婧”的原创稿件,转载请注明出处】