今天用weblogic应用服务器做项目连接oracle数据库时一直报table or view not exists ,但是其他配置正确而且我在数据库中已经建了相应的表!十分费解……
然一哥们说是创建表所用的身份不对,因为之前的是connect as sysdba 后来改为connect as normal 重新登录。结果发现在用sysdba身份登录时建了的表student看不到了,故而猜测是不是oracle自动将sysdba建立的表给保护起来了。然后在normal的身份下又建立了student这张表。运行项目……一切ok了!!
百思不得其解时,有用sysdba登录发现在normal下建立的表变成了scott.student(我是用scott名称登录的)。
然后再网上找了一下这些角色的区别:
oracle 在创建database的时候都会有两个默认用户帐号:
system和sys默认的口令为:manager和change_on_install
同时也授予两个用户DBA角色的权限.
【system】用户只能用normal身份登陆em。
【sys】用户具有“SYSDBA”或者“SYSOPER”权限,登陆em也只能用这两个身份,不能用normal。
首先我应该分清权限和角色,大致讲讲.
权限:oracle提供两种权限(系统权限sys privileges和对象权限object privileges)
角色:是具有名称的一组系统权限和对象权限的集合.
那么我们看看sysdba,sysoper分别的管理权限.
sysdba拥有最高的系统权限,sysdba登陆后是 sys.
sysoper主要用来启动、关闭数据库,sysoper 登陆后用户是 public.
sysdba的权限:
●启动和关闭操作
●更改数据库状态为打开/装载/备份,更改字符集
●创建数据库
●创建服务器参数文件spfile
●日志归档和恢复
●包含了“会话权限”权限
sysoper权限:
●启动和关闭操作
●更改数据库状态为打开/装载/备份
●创建服务器参数文件SPFILE
●日志归档和恢复
●包含了“会话权限”权限
创建用户 caods语句
create user caods identified by caods;
grant connect to caods;
grant create any procedure to caods;
grant create any trigger to caods;
grant create any view to caods;
alter user caods quota 0 on SYSTEM;
alter user caods default tablespace TS_DAC;
alter user caods quota unlimited on TS_DAC;
alter user caods temporary tablespace temp;
备注:开发web项目时配置的数据库文件中的用户默认的应该是normal 但是我如果想在开发中用sysdba身份登录怎么办呢?
分享到:
相关推荐
`sys`用户在登录时只能以`sysdba`或`sysoper`身份,而`system`用户在默认情况下只能以普通身份登录,但可以通过授予`sysdba`或`sysoper`权限来提升其登录权限。 `dba`角色是一个包含多个系统权限的角色,通常授予...
【 system 】用户只能用 normal 身份登陆 em ,除非你对它授予了 sysdba 的系统权限(grant sysdba to system)或者 sysoper 系统权限。 【 sys 】用户具有 “SYSDBA” 或者 “SYSOPER” 系统权限,登陆 em 也只能用...
此时,即使用户拥有`SYSDBA`或`SYSOPER`权限,也无法通过SQL*Plus或其他客户端工具以这些身份登录。 - **SHARED**:表示使用共享密码文件。这种类型的密码文件允许多个用户同时访问数据库,但只能以`SYSOPER`权限...
标题与描述概述的知识点主要集中在Oracle数据库中两个特殊用户的区别:sys与system用户,以及与之相关的系统权限sysdba和sysoper的区别。接下来,我们将深入探讨这些知识点。 ### Oracle_sys和system用户的区别 ##...
sys/change_on_install SYSDBA 或 SYSOPER 不能以 NORMAL 登录,可作为默认的系统管理员 system/manager SYSDBA 或 NORMAL 不能以 SYSOPER 登录,可作为默认的系统管理员 sysman/oem_temp sysman
在连接数据库时,可以以三种身份登录:NORMAL、SYSDBA 和 SYSOPER。NORMAL 是普通用户的身份,SYSDBA 和 SYSOPER 则提供额外的系统管理权限。使用 AS SYSDBA 或 AS SYSOPER 连接时,用户实际上是作为 SYS 或 PUBLIC ...
- **登录身份**:SYSDBA 或 SYSOPER - **说明**:该用户拥有最高级别的权限,可以对整个数据库进行管理。其中,SYSDBA 权限允许用户执行所有数据库管理任务,包括启动和关闭数据库实例;而 SYSOPER 权限则主要针对...
#### 四、Normal、Sysdba与Sysoper的区别 - **Normal**: 指普通用户权限,可以执行一般的数据操作,但无法执行系统级任务。 - **Sysdba**: 拥有最高的系统权限,可以执行所有系统级操作,包括启动和关闭数据库。 - ...
| sys | change_on_install | SYSDBA/SYSOPER | 不能以 NORMAL 登录,可作为默认的系统管理员 | | system | manager | SYSDBA/NORMAL | 不能以 SYSOPER 登录 | | sysman | oem_temp | | sysman 为 oms 的用户名 |...
system用户默认只能以normal身份登录Enterprise Manager (EM),若需使用sysdba或sysoper权限,需额外授予。 在Oracle中,"normal"权限是指普通用户的身份,仅能进行一般的数据操作和查询。sysdba和sysoper则是系统...
- **sys/change_on_install**:以SYSDBA或SYSOPER身份登录,作为系统管理员,不能以NORMAL身份登录。 - **system/manager**:同样具备SYSDBA权限,但不能以SYSOPER身份登录,常用于系统管理。 - **sysman/oem_...
**知识点7:查询具有SYSDBA/SYSOPER权限的用户** - **命令格式**:`SQL> select * from V_$PWFILE_USERS` - 查看具有SYSDBA或SYSOPER权限的所有用户。 #### 四、管理数据库实例 **知识点8:创建测试数据库** - ...
在使用`sys`和`system`用户时,一个关键的区别在于,以`as sysdba`登录时,无论是`system`还是其他用户,都会以`sys`用户的权限运行,这意味着创建的对象将归属于`sys`用户,而不是登录的原始用户。因此,这需要特别...
这些建立了不同的登录身份和权限,例如SYSDBA、SYSOPER、NORMAL 等。 sys 用户是 Oracle 数据库的系统管理员,拥有最高的权限。 system 用户是默认的系统管理员,不能以 SYSOPER 登录。sysman 用户是 Oracle ...
在Oracle管理系统中,有不同类型的用户,如SYSDBA(系统管理员)、SYSOPER(操作员)和NORMAL(普通用户)。SYSTEM用户默认拥有SYSDBA权限,可以执行高级数据库管理任务,如打开/关闭数据库、备份/恢复、日志归档等...
访问Oracle数据库通常通过SQL*Plus或其他客户端工具完成,需要以具有相应权限的用户(如SYSDBA或SYSOPER)登录。例如,使用`sqlplus /nolog`然后`connect`命令可以以SYSDBA身份连接到数据库。 在停止数据库时,可以...