oracle 11g总体介绍下它的帐户可以么?
整个oracle程序也有帐户么?SYSTEMSYM,是什么帐户,是不是每个数据库一开始就默认有这几个帐户?帐户可以访问数据库里的任何表么?还有解锁,锁定是怎么回事?...
整个oracle程序也有帐户么?SYSTEM SYM,是什么帐户,是不是每个数据库一开始就默认有这几个帐户?帐户可以访问数据库里的任何表么?还有解锁,锁定是怎么回事?
展开
展开全部
SYS 是超级用户,老大。
SYSTEM是管理员用户,权限也非常高,但是不具备以下权限:
ALTER DATABASE LINK
ALTER PUBLIC DATABASE LINK
EXEMPT ACCESS POLICY
EXEMPT IDENTITY POLICY
SYSDBA
SYSOPER
其中SYSDBA和SYSOPER还能启动关闭数据库实例,所以SYSTEM当然不能启动关闭数据库实例了。
关于数据库默认就有的账户SYS和SYSTEM在其中,不过还包括很多其他账户,比如:
ANONYMOUS
APEX_030200
APEX_PUBLIC_USER
APPQOSSYS
CTXSYS
DBSNMP
DIP
EXFSYS
FLOWS_FILES
MDDATA
MDSYS
MGMT_VIEW
OLAPSYS
ORACLE_OCM
ORDDATA
ORDPLUGINS
ORDSYS
OUTLN
OWBSYS
OWBSYS_AUDIT
SCOTT
SI_INFORMTN_SCHEMA
SPATIAL_CSW_ADMIN_USR
SPATIAL_WFS_ADMIN_USR
SYSMAN
WMSYS
XDB
XS$NULL
以上这些账户有的为了管理目的、有些为了数据库额外的功能、有些为了示例而存在。如果你启用了一些比较偏的功能还会自动新增一些用户,比如标签安全性、数据库保险箱啊等等。
这些账户每个你Google一番都能讲一个故事。。。
账户和访问表没有直接的关系,权限才是,拿SELECT ANY TABLE(查看任何表)为例,看看谁能查看任何表:
SQL> select grantee from dba_sys_privs where privilege='SELECT ANY TABLE';
GRANTEE
------------------------------------------------------------
DBA
MDSYS
SYS
IMP_FULL_DATABASE
EXP_FULL_DATABASE
DATAPUMP_IMP_FULL_DATABASE
OLAP_DBA
WMSYS
SYSTEM
OLAPSYS
10 rows selected.
结果里有的是账户,比如SYS,SYSTEM,MDSYS,WMSYS,OLAPSYS;剩下的是角色,你接下来应该通过视图DBA_ROLE_PRIVS查哪些账户获得了这些角色:IMP_FULL_DATABASE,EXP_FULL_DATABASE,DATAPUMP_IMP_FULL_DATABASE,OLAP_DBA。
解锁的命令是ALTER USER 用户名 ACCOUNT UNLOCK;
还能顺便重设密码:ALTER USER 用户名 IDENTIFIED BY 新密码 ACCOUNT UNLOCK;
数据库有密码保护策略,密码输错一定次数后即使密码再输对也不让登录,即锁定。
不过,为了保护你的数据库,大多数数据库默认具备的账户默认锁定,除了SYS,SYSTEM(如果你配置了Database Control还有DBSNMP和SYSMAN)。
你问的这些问题其实范围很广,值得你深入研究。大致回答也就这样了,深入的回答出一本小册子都不过分。
SYSTEM是管理员用户,权限也非常高,但是不具备以下权限:
ALTER DATABASE LINK
ALTER PUBLIC DATABASE LINK
EXEMPT ACCESS POLICY
EXEMPT IDENTITY POLICY
SYSDBA
SYSOPER
其中SYSDBA和SYSOPER还能启动关闭数据库实例,所以SYSTEM当然不能启动关闭数据库实例了。
关于数据库默认就有的账户SYS和SYSTEM在其中,不过还包括很多其他账户,比如:
ANONYMOUS
APEX_030200
APEX_PUBLIC_USER
APPQOSSYS
CTXSYS
DBSNMP
DIP
EXFSYS
FLOWS_FILES
MDDATA
MDSYS
MGMT_VIEW
OLAPSYS
ORACLE_OCM
ORDDATA
ORDPLUGINS
ORDSYS
OUTLN
OWBSYS
OWBSYS_AUDIT
SCOTT
SI_INFORMTN_SCHEMA
SPATIAL_CSW_ADMIN_USR
SPATIAL_WFS_ADMIN_USR
SYSMAN
WMSYS
XDB
XS$NULL
以上这些账户有的为了管理目的、有些为了数据库额外的功能、有些为了示例而存在。如果你启用了一些比较偏的功能还会自动新增一些用户,比如标签安全性、数据库保险箱啊等等。
这些账户每个你Google一番都能讲一个故事。。。
账户和访问表没有直接的关系,权限才是,拿SELECT ANY TABLE(查看任何表)为例,看看谁能查看任何表:
SQL> select grantee from dba_sys_privs where privilege='SELECT ANY TABLE';
GRANTEE
------------------------------------------------------------
DBA
MDSYS
SYS
IMP_FULL_DATABASE
EXP_FULL_DATABASE
DATAPUMP_IMP_FULL_DATABASE
OLAP_DBA
WMSYS
SYSTEM
OLAPSYS
10 rows selected.
结果里有的是账户,比如SYS,SYSTEM,MDSYS,WMSYS,OLAPSYS;剩下的是角色,你接下来应该通过视图DBA_ROLE_PRIVS查哪些账户获得了这些角色:IMP_FULL_DATABASE,EXP_FULL_DATABASE,DATAPUMP_IMP_FULL_DATABASE,OLAP_DBA。
解锁的命令是ALTER USER 用户名 ACCOUNT UNLOCK;
还能顺便重设密码:ALTER USER 用户名 IDENTIFIED BY 新密码 ACCOUNT UNLOCK;
数据库有密码保护策略,密码输错一定次数后即使密码再输对也不让登录,即锁定。
不过,为了保护你的数据库,大多数数据库默认具备的账户默认锁定,除了SYS,SYSTEM(如果你配置了Database Control还有DBSNMP和SYSMAN)。
你问的这些问题其实范围很广,值得你深入研究。大致回答也就这样了,深入的回答出一本小册子都不过分。
2012-11-22
展开全部
oracle 安装后都默认创建了一些用户,一般解锁3个 sys system scott 这三个。
1.SYS Oracle数据库中权限最大的系统管理员 , 具有sysdba和sysoper的角色,所有视图都存放在sys用户中,
2.system 仅次于sys系统管理员,不能启动和关闭数据库 其他均可,
3.scott 普通用户,或者说是示例账户,用来学习用的, 有4张表 一般学习就用这个用户登陆 来进行练习,当然 不通的学习也会用到 sys用户。。。
1.SYS Oracle数据库中权限最大的系统管理员 , 具有sysdba和sysoper的角色,所有视图都存放在sys用户中,
2.system 仅次于sys系统管理员,不能启动和关闭数据库 其他均可,
3.scott 普通用户,或者说是示例账户,用来学习用的, 有4张表 一般学习就用这个用户登陆 来进行练习,当然 不通的学习也会用到 sys用户。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询