1 sqlplus 登录

本地登录 (登录数据库服务器)

  Oracle 登录

sqlplus 账户名/密码 as 角色名

1.1 sys登录

例如:

  1 sqlplus sys/oracle

ERROR:

ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

sys管理员必须有角色sysdba

image

  1 [oracle@yutianedu ~]$ sqlplus sys/oracle as sysdba

执行show user ;

SQL> show user ; 显示当前登录用户

USER is “SYS”

clip_image005

退出 exit

1.2 system登录

sqlplus system/oracle

clip_image006

1.3 scott登录 (代表普通用户)

默认普通用户是被锁定的 不允许登录

可以用管理员去解锁 ,管理员可以重新设置密码

1.3.1 管理员登录

sqlplus sys/oracle as sysdba

1.3.2 解锁 重新设置密码

alter user scott account unlock ; 解锁

clip_image007

alter user scott identified by oracle ; 设置scott的密码是oracle

clip_image008

1.3.3 scott登录

sqlpous scott/oracle

clip_image009

疑问1: 有没有可能一个服务器有多个数据库

sqlplus sys/oracle as sysdba 登录的是哪一个??????

登录的时候会去查看环境变量ORACLE_SID 指明你登录的是哪一个实例

怎么查看一个用当前生效的环境变量的值

[oracle@yutianedu ~]$ env |grep ORACLE_SID

clip_image010

如果不指定 默认登录应该是orcl实例

总结:以后本地登录的模板

CentOS 6.4下安装Oracle 11gR2(x64) http://www.linuxidc.com/Linux/2014-02/97374.htm

Oracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htm

Debian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm

先定义你要登录那个实例—> export ORACLE_SID=orcl

然后在登录 —> sqlplus sys/oracle as sysdba

疑问2:登录的时候是不是输入了密码,谁验证的密码

sys 是操作系统验证 和数据库没有关系

数据库无论启动还是没有启动 管理员都可以登录

什么是操作系统验证? 先登录操作系统 然后只要有权限登录,不在验证密码

oracle登录 —》oracle属于dba组 —-》就有sysdba的权限

sqlplus / as sysdba ;不需要密码认证

SQL> show user;

USER is “SYS”

普通用户用的是数据字典验证

数据字典就是数据库中的表,存储账户和密码信息

如果数据库没有启动到open状态,是不允许读取数据库中表的数据库

如果普通用户登录,必须先保证数据库处于open

 转自:https://www.cnblogs.com/ios9/p/7586830.html