windows下面如果采用了OS认证,就不需要输入internal的密码,但是安全起见还是使用密码文件认证比较好,我把它写成了一个批处理文件,修改密码只需要修改NEWPWD变量的值,然后执行一下即可。
说明:
NONEFILE:该文件包含了SQLNET.AUTHENTICATION_SERVICES=(NONE)这一行文字
NTSFILE : 该文件包含了SQLNET.AUTHENTICATION_SERVICES=(NTS)这一行文字
批处理内容如下所示:
updateinternalpwd.bat
@echo off
set ORACLE_SID=satest
set ORACLE_HOME=e:/oracle/ora81
set path=e:/oracle/ora81/bin;%PATH%
set NEWPWD=qq12345
set NONEFILE=E:/oracle/ora81/network/ADMIN/sqlnet2.ora
set NTSFILE=E:/oracle/ora81/network/ADMIN/sqlnet1.ora
set DESTFILE=E:/oracle/ora81/network/ADMIN/sqlnet.ora
set PWDFILE=PWD%ORACLE_SID%.ora
set TTFILE=E:/Oracle/dbascripts/updatepwd.tmp
copy %NTSFILE% %DESTFILE%
echo Stop Database ,please wait...
echo connect internal > %TTFILE%
echo shutdown immediate >> %TTFILE%
echo exit >> %TTFILE%
type %TTFILE% |svrmgrl
echo Renew the password,please wait...
del %PWDFILE%
orapwd file=%PWDFILE% password=%NEWPWD% entries=10
copy %NONEFILE% %DESTFILE%
echo Start Database,please wait...
echo connect internal/%NEWPWD% > %TTFILE%
echo startup >> %TTFILE%
echo exit >> %TTFILE%
type %TTFILE% |svrmgrl
del %TTFILE%
echo Action End!
pause


本文介绍了一个用于Windows环境下Oracle数据库内部用户密码更新的批处理脚本。通过修改脚本中的NEWPWD变量并运行该脚本,可以实现快速安全地更新Oracle内部用户的密码。

被折叠的 条评论
为什么被折叠?



