首页 > 代码库 > Oracle基础学习2--Oracle登录与三种验证机制

Oracle基础学习2--Oracle登录与三种验证机制

首先,Oracle安装完毕有三个默认用户

 

  ?  Sys:数据库对象的拥有者。权限最高。password在安装的时候(口令管理)能够改变

  ?  System:数据库管理员,password为manager

  ?  Scott:一个普通用户,password为tiger

 

再看连接Oracle的三种验证机制

 

  ?  操作系统验证(具体解释见以下)

  ?  password文件验证

  ?  数据库验证

  注:前两者适用于系统用户,比方:SysSystem等;最后一个适用于普通用户。比方: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系统管理员默觉得OracleSqlServer的超级管理员,例如以下进行验证:

  打开计算机管理-- >本地用户和组-- >-- >ora_dba查看组成员是否包括当前登录的windows系统管理员。比如;(我的当前登录对象为v-wangzhip

 

  技术分享

 

  假设存在,就表示windows系统管理员。即为Oracledba(数据库管理员)。所以不写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登录与三种验证机制