• 技术文章 >数据库 >Oracle

    oracle的一个用户可以有多个表空间吗

    长期闲置长期闲置2022-06-10 11:18:37原创182

    oracle的一个用户可以有多个表空间,但是默认的表空间只有一个,当创建表、视图、索引等不指定表空间时,都会存放在默认表空间中;一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。

    本教程操作环境:windows10系统、Oracle 12c版、Dell G3电脑。

    oracle的一个用户有多个表空间吗

    一个用户可以同时管理很多表空间,但是默认表空间只有一个,当创建表,视图,引索等不指定表空间时都会存放在默认表空间中。

    一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。用户和表空间没有隶属关系,表空是一个用来管理数据存储逻辑概念,表空间只是和数据文件发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。

    09.png

    表空间与用户的关系

    创建用户时,一个用户只能指明一个表空间。多个用户可以指明同一个表空间。是1:N

    访问时表空间时,对用户授权即可访问。是N:N

    表空间

    创建表空间会在物理磁盘上建立一个数据文件,作为数据库对象(用户、表、存储过程等等)的物理存储空间;

    一个表空间只能属于一个数据库。所有的数据库对象都存放在指定的表空间中。但主要存放的是表,所以称作表空间。

    oracle中用户的所有数据都是存放在表空间中的

    表空间(tablespace)是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)

    表空间建立在1个或多个数据文件上;

    不同的表空间有不同的权限控制。用户对于表空间A具有完全控制权限,可能对于表空间B就只有查询权限,甚至连连接的权限的都没有。

    用户

    创建用户必须为其指定表空间,如果没有显性指定默认表空间,则指定为users表空间;创建用户后,可以在用户上,创建表、存储过程等等其他数据库对象;

    一个用户有一个默认空间

    多个用户可以共用一个默认空间

    1)、同一个数据库用例中,用户名是不能重复的

    2)、不同用户中可以创建同名的表

    3)、表空间创建后需要创建用户后才能使用,因为任何数据库对象都需要建立在一个数据用户上

    4)、连接dba权限的用户可以直接访问其他用户的数据库对象,否则需要相关用户授权

    5)、访问其他用户的数据库对象是时需要加上对象所属用户的用户名

    oracle是由用户和表空间对数据进行管理和存放的。但是表不是由表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表

    推荐教程:《Oracle视频教程

    以上就是oracle的一个用户可以有多个表空间吗的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:oracle
    上一篇:oracle怎么设置查询的日期格式 下一篇:oracle中有动态语句吗
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• oracle的数据库名是什么• oracle中instr方法怎么用• oracle中什么是分区表• oracle的数据源是什么• oracle11g的em打不开怎么办
    1/1

    PHP中文网