oracle数据库表空间与用户的关系是,oracle给已有用户分配表空间
创建由密码标识的用户用户名
[默认表空间default_tablespace]
[临时表空间TEMPORARY _ TABLESPACE];
解释
用户名:创建的用户名
密码:用户密码。
Default_tablespace:用户的默认表空间,用于存储数据库对象。如果省略该参数,默认情况下,它将存储在SYSTEM表空间中。
Temporary_tablespace:这是临时对象(包括临时表)的默认表空间。如果省略该参数,默认情况下,它将存储在SYSTEM表空间中。
b)案例
创建jason用户
创建由价格标识的用户jason
创建,指定默认表空间和临时表空间
创建由万岁标识的用户henry
默认表空间用户
临时表空间temp
2.授权用户
a)如果您希望用户完成数据库中的某些任务,您需要相应地授予用户权限。
I .如果您希望用户连接到数据库,您必须授予用户创建会话的系统权限。
二。授权必须通过一些特殊的用户授权(如系统授权)和GRANT语句来完成。
三。例如,授予用户jason创建会话的权限。
授予jason创建会话的权限;
b)在下面再创建几个用户供以后使用。
I .创建由按钮标识的用户steve
二。创建由seymour标识的用户gail
三。授予steve,gail创建会话的权限;
3.修改用户密码。
a)您可以使用ALTER USER语句来修改用户密码。
I .例如,将用户jason的密码改为marcus。
由marcus识别的ALTER用户jason
b)可以通过PASSWORD命令修改当前登录用户的密码。
I .例如,jason用户登录后,使用PASSWORD更改密码。
杰森/马库斯控制室
密码
c)执行效果如下图所示:
4.查询用户
a)在Oracle数据库中,可以通过DBA_USERS查询用户和用户特征相关的信息。
B)DBA_USERS包含用户名、加密口令、帐户状态和默认表空间。
c)例如
选择用户名,用户标识,口令,默认表空间
来自dba _ users
d)查询结果如下图所示:
5.删除用户
a)可以使用DROP USER语句删除用户。
I .例如,删除jason用户。
DROP用户jason
二。执行效果如下图所示:
三。有关注意事项
删除用户时,如果用户模式包含对象(如表),可以在DROP USER语句中的用户名之后执行级联删除。但是,需要注意的是,没有其他用户需要访问这些对象。
数据库权限管理
1.系统权限
a)拥有相关权限的用户可以运行来完成数据库中的相关操作,比如执行DDL语句。
例如,如果用户需要创建一个表,他需要拥有CREATE TABLE的系统权限。
b)权限可以组合形成相关的不同角色。两个有用的角色是连接和资源角色。
I .连接角色:允许用户连接到数据库。
二。资源角色:允许用户创建相关的数据库对象,如表、序列等。
2.通用系统权限
3.授权用户
GRANT语句可用于授权用户。
例如,授予steve用户相关的系统权限。
授予steve创建会话、创建用户、创建表的权限;
执行效果如下图所示:
b)可以使用WITH ADMIN OPTION选项允许用户向其他用户授予权限,例如,向steve用户授予相关权限并使用该选项。
授权执行任何程序
史蒂夫与管理选项;
解释
通过使用WITH ADMIN选项,steve不仅拥有EXECUTE ANY PROCEDURE权限,还可以将该权限授予其他用户。
例如,steve授予gail执行任何过程的权限。
连接史蒂夫/按钮
准许盖尔执行任何程序;
4.检查对用户的授权。
a)可以通过user_sys_privs视图查看用户的授权状态。
B)user_sys_privs视图相关列
一.用户名
使用中用户
二。特权
用户拥有的权限的名称
三。管理选项
用户能否将此权限授予其他用户?
c)登录到steve的用户,检查他的系统权限。
连接史蒂夫/按钮
选择*
来自用户系统权限
按特权排序;
执行效果如下图所示:
5.撤销系统权限
a)撤销可以用来撤销用户的相关系统权限。
b)例如,撤销steve的CREATE TABLE的权限。
撤销steve的CREATE TABLE
c)撤销史蒂夫执行任何程序的权利。
撤销执行史蒂夫的任何程序;
d)再次检查gail拥有的权限。
e)描述
尽管steve的“执行任何过程”权限被撤销,但是steve先前授予gail的“执行任何过程”权限仍然保留。
6.对象权限
a)对象权限允许用户执行一些数据库对象操作,例如对表执行DML语句。
例如,对store.products表的INSERT权限允许用户向products表中插入数据。
b)通用对象权限如下
7.向用户授予对象权限。
A) GRANT可用于向用户授予对象权限。
b)例如,授予steve对products表的SELECT、INSERT和UPDATE对象权限以及对employees表的SELECT对象权限。
将store.products的选择、插入和更新授权给steve
将store.employees上的SELECT权限授予steve
c)授予steve更新“姓氏”列和“薪金”列的权限。
将store.employees的更新(姓氏,薪金)授予steve。
d)在向用户授予对象权限的同时,也可以为授权用户设置向其他用户授予权限的权限,例如,向steve授予对customers表的SELECT权限。
授予store.customers权限
授予史蒂夫期权;
E)steve授予gail对customers表的SELECT权限。
连接史蒂夫/按钮
将store.customers上的SELECT权限授予gail
8.user_tab_privs_made视图
a)可以通过user_tab_privs_made视图查看用户授予其他人的表权限。查看相关列描述:
被授权人:授权人
表名:表名
授权人:授权人
权限:对象权限名称
可授予:被许可方能否将此许可授予其他用户?
层级:这个权限是否形成层级关系?
b)例如
选择*
来自用户选项卡权限制造
其中table _ name= PRODUCTS
c)执行效果如下图所示:
9.user_col_privs_made视图
a)可以通过user_col_privs_made视图查看用户授予其他人的列权限。视图的相关列如下
被授权人:授权人
表名:表名
列名:列名
授权人:授权人
权限:权限名称
可授予:被许可方能否将此许可授予其他用户?
b)例如
选择*
FROM user _ col _ privs _ made
c)执行效果如下图所示:
10.user_tab_privs_recd视图
a)可以通过user_tab_privs_recd视图查看用户获得的表权限。视图的相关列如下
所有者:对象的所有者。
Table_name:授权对象名
授权人:授权人
权限:对象权限名称
可授予:是否允许该权限所有者将该权限授予其他用户?
层级:这个权限是否形成层级关系?
b)例如
连接史蒂夫/按钮
选择*
来自user_tab_privs_recd
按特权排序;
c)执行效果如下图所示:
1.user _ col _ privs _ recd视图
a)可以通过user_col_privs_recd视图查看用户获得的列权限。视图的相关列如下
所有者:拥有对象的用户。
Table_name:权限所在的表的名称。
Column_name:权限所在列的名称。
授权人:授权人
权限:权限名称
可授予:该权限的所有者能否将该权限授予其他用户?
b)例如
史蒂夫/巴顿控制室
选择*
FROM user _ col _ privs _ recd
c)执行效果如下图所示。
12.撤销对象的权限。
a)使用REVOKE命令撤销对象权限。
I .例如,撤销steve用户对products表的INSERT权限。
连接商店/密码
撤销steve的产品插页;
二。执行效果如下图所示:
三。撤销steve用户对customers表的SELECT权限
从steve处撤销store.customers上的SELECT
四。描述
当steve的用户对customers表的SELECT权限被撤销时,steve先前授予gail的权限也被撤销。
数据库存储结构
1.数据库存储结构的概念
a)数据库存储结构包括两部分
一.逻辑存储结构
Oracle数据库的逻辑部分包括表空间、模式对象、段、区和数据块。数据库由几个表空间组成,表空间由表、索引、视图等逻辑对象组成。表由段组成,段由区域组成,区域由数据块组成。
二。物理存储结构
Oracle数据库中的数据最终保存在物理文件中,包括用户数据、系统管理数据和日志数据。每个物理文件由数据块组成,主要包括数据文件、控制文件和日志文件。这些文件为数据提供了真正的物理存储。
2.逻辑存储结构
3.物理存储结构
4.表格空间
a)数据库可以分成几个逻辑存储单元,这些逻辑存储单元称为表空间。
每个数据库至少有一个系统表空间。
二。创建表时,需要定义保存表的表空间。
B)Oracle的表空间
I .大文件表空间
大型文件表空间可以包含单个大型文件,这是为非常大的数据库设计的。使用大数据文件可以减少文件数量,从而减少更新时间。
二。系统表空间
每个Oracle数据库都包含一个系统表空间,该表空间是在创建数据库时自动创建的。
当数据库打开时,SYSTEM表空间总是在线的。
SYSTEM表空间包含整个数据库的数据字典和一些PL/SQL程序单元。
三。SYSAUX表空间
该组件使用SYSAUX表空间作为存储数据的默认位值,因此在创建或升级数据库时,将自动创建SYSAUX表空间。不能删除或重命名SYSAUX表空间。
四。还原表空间
每个数据库可以包含多个还原表空间。在自动还原模式下,每个Oracle实例指定(并且只有一个)还原表空间。还原间隔用于管理还原表空间中被撤销的数据。
临时表空间
临时表空间用于存储临时数据。例如,SQL语句在执行排序操作时会创建临时数据。创建数据库时,将获得一个临时表空间。TEMP表空间是默认的临时表空间。
5.检查SQL*Plus中的表空间信息
a)使用SYS以SYSDBA身份登录SQL*Plus,视图V$TABLESPACE可以显示控制文件中的表空间信息。
选择*
FROM v $表空间;
查询结果如下图所示:
b)您还可以访问视图DBA_TABLESPACE来获取和显示所有表空间的属性和在线状态信息。
SELECT表空间名称,内容,状态
从DBA _表空间;
查询结果如下图所示:
6.表空间状态
a)读写状态
用户可以读写表空间。
b)只读状态
用户只能读取表空间数据,但不能写入。当用户不想修改数据库时,可以将其设置为只读状态。
c)离线状态
在这种状态下,用户无法访问。此状态用于控制表空间的维护或恢复与表空间对应的数据文件。
7.修改表空间的状态。
a)您可以使用ALTER TABLESPACE命令修改表空间的状态,语法如下
ALTER TABLESPACE TBL _ name[联机脱机只读读写]
例如,将表空间示例设置为offline。
离线更改表空间示例;
通过视图查看表空间的状态。
b)您可以使用以下命令将表空间示例设置为不同的状态
在线设置在线状态
联机更改表空间示例;
将只读设置为只读。
将表空间示例改为只读;
将读写设置为读写状态
ALTER TABLESPACE示例读写;
c)系统表空间、还原表空间和临时表空间不能设置为脱机状态。
8.创建表空间
a)创建表空间的语法如下
创建表空间表空间名
数据文件 filenane [SIZE integer [KM]]
[自动延长[关开]]
b)描述
Tablespacename:要创建的表空间的名称。
数据文件:指定组成表空间的一个或多个数据文件,如果有多个数据文件,请用逗号分隔。
Filenane:是表空间中数据文件的路径和名称。
SIZE:用于指定文件的大小。k是千字节大小,M是兆字节大小。
自动扩展:用于启用或禁用数据文件的自动扩展。
c)案例
创建一个名为STORE的表空间。
创建表空间存储
数据文件 D:ORACLE11GSTORE。“MDB”尺寸为5M;
9.删除表空间
a)使用DROP TABLESPACE语句删除表空间。
删除表空间表空间名
b)例如,删除存储表空间。
删除表空间存储
包括内容和数据文件;
数据库用户管理
数据库权限管理
数据库存储结构
@Wentasy博文仅供参考,欢迎访问。如有错误,望批评指正。如需转载请注明原博文出处,谢谢:)【CSDN博客】