发布网友 发布时间:2022-04-24 12:25
共3个回答
热心网友 时间:2022-04-08 23:09
额,你说我sysdba是系统用户,他不是你所说的任何用户,你登陆了系统用户,那么软件认为的你就是系统用户,和谁登陆是没有关系的,他是不会区分的,你的理解有偏差,热心网友 时间:2022-04-09 00:27
写法上都是可以的,但是加上as sysdba那么你登陆的就是sysdba,和你前面的用户没关系了,你如果新建一个用户user1,如create user user1 identfied by 123,然后用sys账户grant给他登陆权限之后,就可以直接conn user1/123,这样连的就是user1,如果你conn user1/123 as sysdba,那你连接的还是sysdba,和前面的user1一点关系都没有了热心网友 时间:2022-04-09 02:02
简单的说,oracle要认为你是sysdba有以下3个条件
你对oracle的密码文件没有进行过设置;(因为oracle默认不认证以sysdba登录的用户)
你是以操作系统管理员的身份登录的(不管谁登录你的电脑,只要是用管理员身份登录的,oracle都认作为sysdba,你可以试试用来宾账户登录操作系统,那样的话,oracle就不会把你认成DBA了);
你是以as sysdba的方式登录的(只要你接了as sysdba,不管你前面加了谁的用户名密码,oracle都认为你是以sysdba身份登录,用户为sys)
当上面3个条件有一个不满足的时候,你登录的用户就不是sys了,而如果你登录的那个用户没有被授权为dba的话,那他的权限肯定就只能是普通权限了。