1
 
表空间是什么

1.1、数据表看做的货品,表空间就是存放货品的仓库。SQLserver 用户可以把表空间看做 SQLserver 中的数据库。

1.2、引用【日记二】的总结来解释表空间。

一个数据库由一个或多个表空间组成,一个表空间只能属于一个数据库
一个表空间由一个或多个多个数据文件组成,一个数据文件只能属于一个表空间
一个数据文件由一个或多个操作系统块组成,每一个操作系统块只能数以一个数据文件
一个表空间可以包含一个或多个段,一个段只能属于一个表空间
一个段由一个或多个区组成,每一个区只能属于一个段
一个区由一个或多个Oracle 块组成,每一个Oracle块只能属于一个区
一个区只能属于一个数据文件,数据文件的空间可以分配到一个或多个区
一个Oracle 块由一个或多个操作系统块组成,一个操作系统块是一个Oracle块的一部分

2
 
表空间分类、作用

2.1、表空间有三种:

  2.1.1、数据表空间:用于存放数据(表)的主要表空间;

  2.1.2、临时表空间:在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理;

  2.1.3、UNDO表空间:主要作用是 事务恢复、事务回滚、读一致性 :

    2.1.3.1、事务恢复:在进行DML操作时,insert、update、delete操作时,undo段记录事务的反向操作并且redo日志也记录undo段的操作,既redo保护undo段的信息。当实例关闭或意外崩溃后,再次open(打开)时实例需要对没有commit(提交)的事务进行回滚,完成事务的恢复。

    2.1.3.2、事务回滚:用户进行DML操作后没有进行commit(提交),需要修改前的数据。只要该操作在undo段保护的时间内,此时执行rollback(回滚)操作可以回滚到最近记录点或上一次commit(提交)操作后的状态,恢复到数据修改前的状态。

    2.1.3.3、读一致性:当进行DML操作时,undo段会记录数据变更前的状态(通过构造原数据的一致性数据块)。如果用户还没有进行commit(提交)操作,其他人查询此条数据会看到数据变更前的状态。因为其他用户读到的数据是undo段中原数据块中的数据,保证没有commit(提交)的数据读取的一致性。

3
 
创建表空间

3.1、创建临时表空间

-- 创建临时表空间
create temporary tablespace [tempspace_name]
tempfile [dbf_path] --指定表空间dbf文件存放位置
size 50m --初始大小50m
autoextend on
next 50m maxsize 20480m --自动增长50m 最大2g
extent management local;

3.2、创建数据表空间

-- 创建数据表空间
create tablespace [tablespace_name]
logging
datafile [dbf_path] --指定表空间dbf文件存放位置
size 50m --初始大小50m
autoextend on
next 50m maxsize 20480m --自动增长50m 最大2g
extent management local;

3.3、创建用户并指定表空间(也可以直接给已有用户指定表空间)

--创建用户并指定表空间
create user [user_name] identified by [password] --创建用户
default tablespace [tablespace_name] --指定数据表空间
temporary tablespace [tempspace_name]; --指定临时表空间
--已有用户指定表空间
alter user [user_name] default tablespace [tablespace_name];

如果新建用户指定完表空间后需要授权  grant connect,resource,dba to [user_name];

4
 
删除表空间

4.1、删除表空间  drop tablespace [tablespace_name] including contents and datafiles; --删除表空间及数据文件

4.2、 表空间文件无法直接手动删除。若强行删除dbf文件,可能引起数据库异常。

<<============================================================================================================================================>>

此日记系列仅做普通开发使用Oracle,并非专业DBA

oracle入坑日记<四>表空间的更多相关文章

  1. oracle入坑日记<五>数据表

    1   数据表 1.1.数据表是存放数据字段信息的地方:在Oracle,数据表拥有者单位是用户,同时数据表属于表空间.如: 登录my_user用户在orcl表空间下创建的表就是 my_user用户在o ...

  2. oracle入坑日记<六>自增列创建和清除(含序列和触发器的基础用法)

    0   前言 用过 SQLserver 和 MySQL 的自增列(auto_increment),然而 Oracle 在建表设置列时却没有自增列. 查阅资料后发现 Oracle 的自增列需要手动编写. ...

  3. oracle入坑日记<三>用户详解(角色理解)

    1   用户是什么 1.1.权限管理是Oracle的精华,不同用户登录到同一数据库中,可能看到不同数量的表,拥有不同的权限.Oracle 的权限分为系统权限和数据对象权限,共一百多种.如果把Oracl ...

  4. oracle入坑日记<二>认识oracle(含sqlplus基础使用)

    1.SID(数据库实例) 1.1. oracle安装的时候有一项叫[全局数据库名]的填写项,这个就是oracle的SID也是数据库的唯一标识符: 1.2.一个oracle数据库有且只有一个SID(一般 ...

  5. oracle入坑日记<一> 安装

    学习日记系列(前辈/大神勿喷) 一.下载 下载地址:http://www.oracle.com/technetwork/cn/database/enterprise-edition/downloads ...

  6. Oracle基础(三) 表空间

    数据库的存储结构 数据库主要用于存储和检索相关的信息,Oracle数据库包含逻辑结构和物理结构. 物理结构是指现实存储单元,由一组文件组成如数据文件.日志文件.控制文件. 数据文件:用于存储数据的文件 ...

  7. Oracle 数据库、实例、表空间、用户、数据库对象

    Oracle是一种数据库管理系统,是一种关系型的数据库管理系统.通常情况了我们称的“数据库”,包含了物理数据.数据库管理系统.内存.操作系统进程的组合体,就是指这里所说的数据库管理系统. 完整的Ora ...

  8. 转 Oracle Transportable TableSpace(TTS) 传输表空间 说明

    ############1   迁移数据库的集中方法 三.相关技术 迁移方式 优势 不足1 Export and import • 对数据库版本,以及系统平台没有要求 • 不支持并发,速度慢• 停机时 ...

  9. Angular 从入坑到挖坑 - 表单控件概览

    一.Overview angular 入坑记录的笔记第三篇,介绍 angular 中表单控件的相关概念,了解如何在 angular 中创建一个表单,以及如何针对表单控件进行数据校验. 对应官方文档地址 ...

随机推荐

  1. vue实战 - 车牌号校验和银行校验

    在看这篇文章之前,我建议大伙可以去把项目demo拉到本地看看.如果觉得写得不好,可以一起提提issues,一起维护.或者大伙有刚需,可以留言,后期会不断完善. 使用方法: git clone http ...

  2. 小妖精的完美游戏教室——人工智能,A*算法,实现篇

    //================================================================//// Copyright (C) 2017 Team Saluk ...

  3. hdu 2824 欧拉函数 O(nlogn) 和O(n)

    裸题 O(nlogn): #include <cstdio> #include <iostream> #include <algorithm> using name ...

  4. 关于python的装饰器(初解)

    在python中,装饰器(decorator)是一个主要的函数,在工作中,有了装饰器简直如虎添翼,许多公司面试题也会考装饰器,而装饰器的意思又很难让人理解. python中,装饰器是一个帮函数动态增加 ...

  5. application————web

    application 作用域: 只要web服务器不关闭就一直存在 统计页面的统计次数 一个用户 多次刷新也统计 多个用户访问 思路: 需要一个变量 count 记录index.jsp访问次数 方法 ...

  6. camelcase-hankerrank

    int camelcase(string s) { int cnt=0; int a; for(int i=0;i<s.size();i++) { a=s[i]; if(65<=a& ...

  7. 试写foxit reader的ConvertToPDF功能的wrapper

    相比于直接fuzzing大型程序本身,针对程序的某一特定功能写wrapper后再fuzzing则要高效的多.网上搜了下,仅有两篇关于foxit reader的wrapper文章,一个用python,另 ...

  8. JavaEE基本框架(Struts2+Spring+MyBatis三层,Struts MVC)之间的关系

    郭晨 软件151 1531610114 [整理]JavaEE基本框架(Struts2+Spring+MyBatis三层,Struts MVC)之间的关系 visio文件下载 概述 一个JavaEE的项 ...

  9. AJAX实现注册

    先添加点击事件: <input type="button" id="submittt" value="注册"/> 展示提示消息: ...

  10. Angular2+AngularJS

    AngularJS 系列: 1.angular.module 的定义 var mapApp = angular.module("positionSalaryEditApp",[&q ...