百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

ORACLE表空间监控及管理大全,工作参考用

sinye56 2024-09-21 02:25 2 浏览 0 评论

ORACLE,linux下

查询当前用户具有表空间的使用率情况:

SELECT a.tablespace_name "表空间名",

total/1024/1024/1024 表空间大小,

free/1024/1024/1024 表空间剩余大小,

(total - free)/1024/1024/1024 表空间使用大小,

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;

--查看各表占用空间,其中PARTITIONED = 'NO' 为非分区表:

select segment_name, (sum(bytes)/1024/1024) Mbytese

from user_segments u1, user_tables u2

where u1.segment_name = u2.TABLE_NAME

and u2.PARTITIONED = 'NO'

HAVING (sum(bytes)/1024/1024) > 40

group by segment_name;

一般来说system表空间是系统表空间,不需要很大,如果占用很大,需要查哪个占用的,

-- 可通过如下语句查看一下是不是有应用的段放到了SYSTEM中:

select OWNER,SEGMENT_NAME,SEGMENT_TYPE,BYTES from DBA_SEGMENTS where TABLESPACE_NAME='SYSTEM' and OWNER not in ('SYS','SYSTEM');

--通过如下查询语句查看找出系统表空间中占用空间最多的Top9对象

SELECT *

FROM (SELECT BYTES, segment_name, segment_type, owner

FROM dba_segments

WHERE tablespace_name = 'SYSTEM'

ORDER BY BYTES DESC)

WHERE ROWNUM < 10

一般是记录审计记录的aud$表占用了system很大的空间。

备份后truncate掉AUD$,问题临时解决。记得oracle11.2可以把aud$迁移到普通的表空

间。

表空间扩容(得先确保磁盘空间够)

select * from dba_data_files where tablespace_name='DATALIST';--先找出这个表空间的文件

ALTER TABLESPACE DATALIST ADD DATAFILE '/oradata3/datalist-17.dbf' SIZE 10G;

--再增加一个数据文件,一般要按序号增加

重建UNDO表空间:

1. 创建新的undo表空间

CREATE UNDO TABLESPACE "UNDOTBS"

DATAFILE '/oradata1/dbnms/undotb01.dbf' SIZE 4096m;

2.切换UNDO表空间为新的UNDO表空间

alter system set undo_tablespace=UNDOTBS2;

或者修改init文件,重启数据库

3.删除原来的undo表空间

drop tablespace UNDOTBS1 including contents;

回缩临时表空间:

1、 使用如下语句查看一下认谁在用临时段

SELECT s.username, s.sid, s.serial#, s.sql_address, s.machine, s.program, su.tablespace, su.segtype, su.contents

FROM v$session s, v$sort_usage su

WHERE s.saddr = su.session_addr;

2、 那些正在使用临时段的进程

Alter system kill session '489,266';

3、把TEMP表空间回缩一下

Alter tablespace TEMP coalesce;

相关推荐

Linux在线安装JDK1.8

首先在服务器pingwww.baidu.com查看是否可以连网然后就可以在线下载一、下载安装JDK1.81、在下载安装的同时做好一些准备工作...

Linux安装JDK,超详细

1、了解RPMRPM是Red-HatPackageManager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux...

Linux安装jdk1.8(超级详细)

前言最近刚购买了一台阿里云的服务器准备要搭建一个网站,正好将网站的一个完整搭建过程分享给大家!#一、下载jdk1.8首先我们需要去下载linux版本的jdk1.8安装包,我们有两种方式去下载安装...

Linux系统安装JDK教程

下载jdk-8u151-linux-x64.tar.gz下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.ht...

干货|JDK下载安装与环境变量配置图文教程「超详细」

1.JDK介绍1.1什么是JDK?SUN公司提供了一套Java开发环境,简称JDK(JavaDevelopmentKit),它是整个Java的核心,其中包括Java编译器、Java运行工具、Jav...

Linux下安装jdk1.8

一、安装环境操作系统:CentOSLinuxrelease7.6.1810(Core)JDK版本:1.8二、安装步骤1.下载安装包...

Linux上安装JDK

以CentOS为例。检查是否已安装过jdk。yumlist--installed|grepjdk或者...

Linux系统的一些常用目录以及介绍

根目录(/):“/”目录也称为根目录,位于Linux文件系统目录结构的顶层。在很多系统中,“/”目录是系统中的唯一分区。如果还有其他分区,必须挂载到“/”目录下某个位置。整个目录结构呈树形结构,因此也...

Linux系统目录结构

一、系统目录结构几乎所有的计算机操作系统都是使用目录结构组织文件。具体来说就是在一个目录中存放子目录和文件,而在子目录中又会进一步存放子目录和文件,以此类推形成一个树状的文件结构,由于其结构很像一棵树...

Linux文件查找

在Linux下通常find不很常用的,因为速度慢(find是直接查找硬盘),通常我们都是先使用whereis或者是locate来检查,如果真的找不到了,才以find来搜寻。为什么...

嵌入式linux基本操作之查找文件

对于很多初学者来说都习惯用windows操作系统,对于这个系统来说查找一个文件简直不在话下。而学习嵌入式开发行业之后,发现所用到的是嵌入式Linux操作系统,本想着跟windows类似,结果在操作的时...

linux系统查看软件安装目录的方法

linux系统下怎么查看软件安装的目录?方法1:whereis软件名以查询nginx为例子...

Linux下如何对目录中的文件进行统计

统计目录中的文件数量...

Linux常见文件目录管理命令

touch用于创建空白文件touch文件名称mkdir用于创建空白目录还可以通过参数-p创建递归的目录...

Linux常用查找文件方法总结

一、前言Linux系统提供了多种查找文件的命令,而且每种查找命令都具有其独特的优势,下面详细总结一下常用的几个Linux查找命令。二、which命令查找类型:二进制文件;...

取消回复欢迎 发表评论: