sqlplus / as sysdba 详解

在命令窗口输入“sqlplus / as sysdba”后回车,即可连接到Oracle

例如

C:\>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 4月 17 10:05:34 2012

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

那么到底此命令到底执行了什么操作,不妨登录后输入“select user from dual;”查看,可看到如下结果:

C:\>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 4月 17 10:11:11 2012

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select user from dual;

USER
------------------------------
SYS

SQL>

很明显我们刚刚是以SYS用户登录的

这就说明此处省略了用户名及密码

我们再以“sqlplus sys/****(sys用户的密码) / as sysdba”的方式登录,此时不论用户名或密码是否在系统中存在都可正常登录,登录的用户还是“SYS”,命令操作如下:

C:\>sqlplus sss/sss as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 4月 17 10:21:12 2012

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select user from dual;

USER
------------------------------
SYS

SQL>

命令详解:以sqlplus / as sysdba方式登录时,采用的是操作系统验证的方式,所以用户名/密码输与不输入是一样的。
几种连接方式:

sqlplus有几种登陆方式 比如:
1.C: > sqlplus "/as sysdba" --以操作系统权限认证的oracle sys管理员登陆

2.C: > sqlplus /nolog --不在cmd或者terminal当中暴露密码的登陆方式
SQL> conn /as sysdba
SQL> conn sys/password as sysdba

3.C: > sqlplus scott/tiger --非管理员用户登陆

4.C: > sqlplus scott/tiger@orcl --非管理员用户使用tns别名登陆

5.C: > sqlplus sys/password@orcl as sysdba --管理员用户使用tns别名登陆
6.C: > sqlplus --不显露密码的登陆方式
Enter user-name:sys
Enter password:password as sysdba --以sys用户登陆的话 必须要加上 as sysdba 子句
————————————————

sqlplus / as sysdba 详解

上一篇:on - django 执行数据库迁移后数据库并未更新 和 InternalError: (1054, u"Unknown column 'xxx' in 'field list'")问题


下一篇:MySQL优化3之索引使用