首页 > 代码库 > Oracle基础学习2--Oracle登录与三种验证机制
Oracle基础学习2--Oracle登录与三种验证机制
首先,Oracle安装完毕有三个默认用户
? Sys:数据库对象的拥有者。权限最高。password在安装的时候(口令管理)能够改变
? System:数据库管理员,password为manager
? Scott:一个普通用户,password为tiger
再看连接Oracle的三种验证机制
? 操作系统验证(具体解释见以下)
? password文件验证
? 数据库验证
注:前两者适用于系统用户,比方:Sys、System等;最后一个适用于普通用户。比方:Scott。
再看Oracle的启动过程
? 首先启动“监听”
? 然后由系统用户在不登陆(nolog)的情况下进入sqlplus,并连接到数据库
? 然后(由系统用户)启动数据库实例
转化为命令即例如以下:
? lsnrctl start(启动监听)
? sqlplus/nolog(不登陆)
conn sys/oracle as sysdba(系统用户连接到数据库)
? starup(启动数据库实例)
注:conn sys/oracle as sysdba中“/”前的sys为username。“/”后的oracel为password。sysdba的意思是“系统数据库管理员”,有了这样的身份,事实上根本不须要usernamepassword就可连接到Oracle,由于这样的身份连接时会採用上面的“操作系统验证”方式,根本不会对username和password进行验证。
所以我们能够不写usernamepassword:conn/as sysdba(“/”不可省略),也能够随便写:conn kb/lbg as sysdba都没有问题。
这里再对“操作系统验证”进行解释。它就相当于我们连接SqlServer时的windows身份验证,由于windows系统管理员默觉得Oracle、SqlServer的超级管理员,例如以下进行验证:
打开计算机管理-- >本地用户和组-- >组-- >ora_dba查看组成员是否包括当前登录的windows系统管理员。比如;(我的当前登录对象为v-wangzhip)
假设存在,就表示windows系统管理员。即为Oracle的dba(数据库管理员)。所以不写username、password默认能够连接到Oracle,假设从ora_dba中删除此管理员。那么再conn/as sysdba连接将提示“权限不足”。
总结
? 系统用户连接Oracle:sqlplus username/password as sysdba(用户名密码可任意指定,也可不指定,如:sqlplus/as sysdba 或sqlplus sys/as sysdba或sqlplus sys/admin as sysdba)
? 普通用户连接Oracle:sqlplus username/password(必须指定用户名、密码,如:sqlplus scott/tiger)
假设须要指明要訪问的数据库的服务名(全局数据库名):
? Sqlplus username/password@net_service_name
如: sqlplus scott/tiger@orcl
假设须要訪问其他机器上的数据库服务:
? sqlplus username/password@//host:port/sid
Host--指定数据库server计算机的主机名或 IP地址。
Port--指定数据库server上的监听port。
Sid--指定要訪问的数据库的服务名。
注意:
? sys和system须要以sysdba登录
? 在进入sqlplus之后,就能够使用conn连接到其它用户,如:conn sys/admin as sysdba或conn scott/tiger
Oracle基础学习2--Oracle登录与三种验证机制