数据库中temp是什么意思

数据库中temp是什么意思,第1张

数据库中“temp”是全局存储内部对象之一,是用户对象,临时表,临时对象,以及SQL Server *** 作创建的存储过程

每个数据库实例只有一个tempdb,所以可能存在性能以及磁盘空间瓶颈。各种形式的可用空间及过度饿DDL/DML *** 作都会导致tempdb负载过重。这会导致运行在服务器上不相干程序运行缓慢或者运行失败。

“tempdb”的一些常见通病如下:

(1)耗完了tempdb的所有存储空间。

(2)读取tempdb时的I/O瓶颈造成的查询运行缓慢。

(3)过度的DDL *** 作造成在系统表上的瓶颈。

(4)分配竞争。

以上内容参考:百度百科-tempdb

oracle

数据库里查看表空间使用状况;

oracle表空间的事情状况要经常查看,一般空闲比例过低的时候就应该考虑增大表看空间了。查看方法如下sql:

方法一:

select

dbf.tablespace_name,

dbf.totalspace

"总量(m)",

dbf.totalblocks

as

总块数,

dfs.freespace

"剩余总量(m)",

dfs.freeblocks

"剩余块数",

(dfs.freespace

/

dbf.totalspace)

*

100

"空闲比例"

from

(select

t.tablespace_name,

sum(t.bytes)

/

1024

/

1024

totalspace,

sum(t.blocks)

totalblocks

from

dba_data_files

t

group

by

t.tablespace_name)

dbf,

(select

tt.tablespace_name,

sum(tt.bytes)

/

1024

/

1024

freespace,

sum(tt.blocks)

freeblocks

from

dba_free_space

tt

group

by

tt.tablespace_name)

dfs

where

trim(dbf.tablespace_name)

=

trim(dfs.tablespace_name)

方法二:

select

total.name

"tablespace

name",

free_space,

(total_space-free_space)

used_space,

total_space

from

(select

tablespace_name,

sum(bytes/1024/1024)

free_space

from

sys.dba_free_space

group

by

tablespace_name

)

free,

(select

b.name,

sum(bytes/1024/1024)

total_space

from

sys.v_$datafile

a,

sys.v_$tablespace

b

where

a.ts#

=

b.ts#

group

by

b.name

)

total

where

free.tablespace_name

=

total.name

当发现有的表空间不够的错误时,处理如下:

1:找出该表空间对应的数据文件及路径

select

*

from

dba_data_files

t

where

t.tablespace_name

=

'ard'

2:增大数据文件

alter

database

datafile

'全路径的数据文件名称'

resize

***m

3:增加数据文件

alter

tablespace

表空间名称

add

datafile

'全路径的数据文件名称'

***m

注解:表空间尽量让free百分比保持在10%以上,如果低于10%就增加datafile或者resizedatafile,一般数据文件不要超过2g


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9238346.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存