为了安全起见,有些时候需要禁用sysdba远程登录,本地可以登录,搜了一下网上的资料,操作如下:
alter system set remote_login_passwordfile=none scope=spfile sid='*'; --需重启数据库
vi $ORACLE_HOME/network/admin/sqlnet.ora
#添加如下记录
SQLNET.AUTHENTICATION_SERVICES=(NTS)
然后lsnrctl reload
但是这样会有一个问题,数据库重启之后,本地登录,sys用户startup数据库,提示没有权限
SQL> startup
ORA-01031: insufficient privileges
解决方法:
将$ORACLE_HOME/network/admin/sqlnet.ora的SQLNET.AUTHENTICATION_SERVICES=(NTS)记录去掉,lsnrctl reload后就可以了。
所以要禁用sysdba远程登录,本地可以登录,且重启数据库后,不影响startup,只需要
alter system set remote_login_passwordfile=none scope=spfile sid='*';
转载于:https://blog.51cto.com/zhangwf/1840301