`

Oralce之表空间

阅读更多

知识在于积累

厚积薄发靠的便是梳理和总结,fighting~

 --------------------------------------------------表空间--------------------------------------------------------

*、查看oracle表空间的名称及其已使用大小(M)

SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size_M 
FROM dba_tablespaces t, dba_data_files d 
WHERE t.tablespace_name = d.tablespace_name 
GROUP BY t.tablespace_name; 

 

*、查看oracle表空间名称对应的物理文件路径及其已使用大小

SELECT tablespace_name, 
file_name, 
round(bytes / (1024 * 1024), 0) total_space_M
FROM dba_data_files 
ORDER BY tablespace_name; 

 

*、查询oracle表空间的空闲大小M

SELECT SUM(bytes) / (1024 * 1024) AS free_space_M, tablespace_name 
FROM dba_free_space 
GROUP BY tablespace_name; 

 

*、查询oracle表空间的占用比例

SELECT a.tablespace_name, 
a.bytes total, 
b.bytes used, 
c.bytes free, 
(b.bytes * 100) / a.bytes "% USED ", 
(c.bytes * 100) / a.bytes "% FREE " 
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c 
WHERE a.tablespace_name = b.tablespace_name 
AND a.tablespace_name = c.tablespace_name; 

 

*、查询oracle库对象的表分区、表、视图、序列、存储过程、触发器、java资源等等信息

SELECT owner, object_type, status, COUNT(*) count# 
FROM all_objects 
GROUP BY owner, object_type, status; 

 

*、查询oracle及其组件的版本信息

SELECT product,version from product_component_version;

 

*、查看oracle的创建日期及其归档方式

SELECT created, log_mode, log_mode FROM v$database; 

 

*、eg:查看表空间的使用情况(引用)

SELECT a.tablespace_name "表空间名", 
total "表空间大小", 
free "表空间剩余大小", 
(total - free) "表空间使用大小", 
total / (1024 * 1024 * 1024) "表空间大小(G)", 
free / (1024 * 1024 * 1024) "表空间剩余大小(G)", 
(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)", 
round((total - free) / total, 4) * 100 "使用率 %" 
FROM (SELECT tablespace_name, SUM(bytes) free 
FROM dba_free_space 
GROUP BY tablespace_name) a, 
(SELECT tablespace_name, SUM(bytes) total 
FROM dba_data_files 
GROUP BY tablespace_name) b 
WHERE a.tablespace_name = b.tablespace_name 

 

*、表空间的dbf单文件大小依赖于block_size(默认8k)也就是32G

即oracle的dbf单文件大小并不是无限的,需要考虑block_size的配置,可提前根据数量的大小设置block_size值,后续若要更改,不建议修改block_size,可以从添加dbf文件的方式,alter tablespace users add datafile '/u01/data/orcl/users03.dbf' size 1G autoextend on;

 

*、oracle创建表空间

create tablespace caetestspace  
datafile 'D:\App\oracle11r2\caedbf\caetestspace.dbf'   
size 1500M   
autoextend on next 50M maxsize 3000M;

 

*、oracle创建临时表空间(oracle自带的无法满足需求)

create temporary tablespace caetesttempspace  
tempfile 'D:\App\oracle11r2\caedbf\caetesttempspace.dbf'   
size 500M   
autoextend on next 50M maxsize unlimited;

*、查询oracle某个表空间对应的物理文件及其位置等信息

select * from dba_data_files where tablespace_name='USERS';

 

*、oacle表空间增加数据文件

 alter tablespace caetest add datafile 'd:\newtablespacefile.dbf' size 500m;

 

*、oracle删除(临时)表空间

drop tablespace testtempspace including contents and datafiles cascade constraints;

    没有drop temporyary的用法

 

 

  --------------------------------------------------表空间和表的关系--------------------------------------------------------

*、oracle查询某个表空间下有哪些表

select tablespace_name,table_name from user_tables;

 

  --------------------------------------------------数据库用户--------------------------------------------------------

*、oracle管理员查询数据库中用户信息

select username from dba_users;

 

*、oracle创建用户

create user caetest identified by caetest;

 

*、 oracle查看用户拥有的权限

select * from dba_role_privs;
select * from user_role_privs;

 

*、oracle用户授予权限

grant resource , connect to caetest;

 

*、oracle用户收回权限

revoke resource , connect from caetest;

 

*、oracle为已存在的用户赋予表空间以及临时表空间(临时可有可无,但需要时必须这样写)

alter user caetest identified by caetest default tablespace caetestspace temporary tablespace caetesttempspace;

 

*、oracle查看当前用户默认表空间

select username,default_tablespace from user_users;

 

*、oracle查看所有用户默认表空间

select username,default_tablespace from dba_users;

 

*、oracle删除用户

drop user caetest cascade;

 

   --------------------------------------------------资源链接--------------------------------------------------------

感谢以下资源的分享者(更详尽):

oracle用户、权限、角色的梳理

http://www.cnblogs.com/chenleiustc/archive/2009/07/29/1534110.html(访问速度快)

用户及表空间的管理

http://blog.csdn.net/starnight_cbj/article/details/6792364

临时表空间的增删查改以及PGA和临时表空间的使用策略

http://www.cnblogs.com/guanjie20/p/3858480.html

oracle实例的内存(SGA和PGA)的查询和调整

http://log-cd.iteye.com/blog/562052

修改oracle服务端字符集编码(慎用)

http://blog.csdn.net/fred_yang2013/article/details/46679931

分享到:
评论

相关推荐

    Oracle临时表空间满的解决步骤

    解决 Oracle 临时表空间满的问题需要通过查看当前数据库的默认临时表空间、查看当前临时表空间的大小、创建新的临时表空间、将新建的临时表空间设置为数据库的默认临时表空间、删除原来的临时表空间、创建新的临时表...

    oracle 创建表空间命令

    在Oracle数据库管理系统中,创建表空间是管理数据库存储空间的关键操作。表空间是数据库中用于存储数据对象(如表、索引、视图等)的逻辑结构。它将物理磁盘上的一个或多个数据文件组织成一个逻辑单元,使得数据库...

    学习oracle创建一个表空间创建临时表空间创建用户表空间资源的权限

    创建和管理表空间及用户资源权限是数据库管理员(DBA)的重要工作之一。以下将详细介绍如何在Oracle中创建表空间、临时表空间以及赋予用户对表空间的权限。 首先,我们来了解如何创建一个常规表空间: 1. **创建表...

    oracle之表空间的创建和维护

    该ppt从语法和实例角度讲述对oracle数据库的表空间的创建、修改、删除操作。深入浅出,简单易懂。

    Oracle临时表空间不足和批处理缓慢问题探讨.pdf

    Oracle 临时表空间不足和批处理缓慢问题探讨 本文探讨了 Oracle 临时表空间不足和批处理缓慢问题的原因和解决方法。通过分析和测试,发现了问题的根源在于应用逻辑方面,具体来说是 SQL 语句的编写问题。通过编写...

    Oracle 表空间 收缩

    在Oracle数据库管理过程中,合理地管理和优化存储空间是非常重要的工作之一。有时,我们会遇到这样的情况:某个表空间占用的实际物理空间远大于其实际需要的空间,这不仅造成了存储资源的浪费,也可能会影响到其他表...

    oracle temp表空间不足解决方法

    Oracle数据库系统中,Temp表空间是用于存储临时段的地方,主要在执行排序、连接和创建索引等操作时使用。当遇到"Oracle temp表空间不足"的问题时,这通常意味着数据库运行过程中产生的临时数据超过了现有Temp表空间...

    获取oracle表空间脚本

    ### 获取Oracle表空间脚本 #### 背景与需求 在进行数据库备份与恢复的过程中,经常需要获取当前Oracle数据库中的表空间信息及其创建脚本。这样做的目的是为了确保在恢复过程中能够快速重建原有的数据库环境,包括...

    oracle增加表空间

    Oracle数据库是业界广泛使用的数据库管理系统之一,为了确保数据库性能与可用性,合理地管理表空间是非常重要的一个环节。本文将详细介绍如何在Linux操作系统下通过命令行方式增加Oracle数据库的表空间以及创建新...

    Oracle多个表空间合并成一个表空间,验证通过

    ### Oracle 多个表空间合并成一个表空间详解 #### 背景介绍 在进行数据库维护时,可能会遇到需要将多个表空间合并为一个的情况。这种情况通常发生在新项目的开发过程中,尤其是当新项目需要引用来自其他表空间的...

    ORACLE SYSTEM表空间已满解决方案.docx

    ### ORACLE SYSTEM表空间已满解决方案 #### 一、SYSTEM表空间的作用 SYSTEM表空间是Oracle数据库中的一个关键组成部分,在数据库创建时会自动创建。它包含了许多重要的数据库元数据和控制信息,对于数据库的正常...

    oracle定时删除表空间的数据并释放表空间

    在Oracle数据库管理中,定期清理和优化表空间是至关重要的任务,这有助于保持数据库的高效运行和合理利用存储资源。本文将深入探讨如何在Oracle环境中实现定时删除表空间的数据并释放空间,主要涵盖以下几个关键知识...

    linux下创建oracle用户表空间

    "Linux 下创建 Oracle 用户表空间" Linux 下创建 Oracle 用户表空间是指在已有的数据库实例上创建一个新的帐号,访问一些新的表操作。以下是创建用户表空间的步骤: 第一个步骤是登录 Linux,以 oracle 用户登录...

    ORACLE修改表空间方法

    在Oracle数据库系统中,表空间(Tablespace)是存储数据对象如表、索引、视图等的基础单元。它管理数据库的数据存储空间。当需要扩展数据库容量或优化存储配置时,可能需要对表空间进行修改。这篇教程将详细介绍如何...

    Oracle用户(user)和表空间(tablespace).pdf

    Oracle 数据库是一个强大的关系型数据库管理系统,其用户管理和表空间机制是数据库管理和操作的基础。本文主要探讨了 Oracle 用户(user)和表空间(tablespace)的相关概念、创建、配置、修改以及删除等核心操作,...

    \Oracle 表空间与数据文件

    在Oracle数据库中,**表空间**是存储数据的基本单位之一,它是一个或多个数据文件的逻辑集合。表空间提供了数据存储的逻辑视图,而数据文件则是实际存储数据的物理文件。表空间可以分为几种类型: - **永久段**:如...

    Oracle本地管理表空间

    ### Oracle本地管理表空间知识点详解 #### 一、概述 **本地管理表空间**是Oracle 8i版本引入的一种新的表空间管理...随着Oracle版本的不断更新和发展,本地管理表空间已经成为现代Oracle数据库管理中的标准配置之一。

    如何正确的删除Oracle表空间数据文件

    在Oracle数据库管理中,删除表空间数据文件是一项关键操作,涉及到数据的安全性和系统的稳定性。本文将详细介绍如何正确地删除Oracle表空间数据文件,探讨OFFLINE和OFFLINE DROP的区别,以及在操作系统层面删除数据...

    oracle表空间详解

    Oracle 表空间详解 Oracle 表空间是 Oracle 数据库中一个非常重要的概念,它是数据库中存储空间的逻辑概念。由于 Oracle 数据库可以存储大量的数据,但是数据文件大小受操作系统的限制,而过大的数据文件对数据的...

    oracle 查询表空间使用情况

    查询oracle表空间使用情况,表空间文件详情,创建或者变更表空间大小

Global site tag (gtag.js) - Google Analytics