当前位置:首页 » 编程语言 » 查看表空间大小及相关的sql
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

查看表空间大小及相关的sql

发布时间: 2022-11-23 01:42:20

① 怎么通过sql语句查看MySQL数据库的表空间状态

1.
查看数据库的索引空间大小
在MySQL
Workbench中运行以下SQL语句:

以GB为单位
SELECT
CONCAT(ROUND(SUM(index_length)/(1024*1024*1024),
6),

GB’)
AS
‘Total
Index
Size’
FROM
information_schema.TABLES
WHERE
table_schema
LIKE
‘database’;

以MB为单位
SELECT
CONCAT(ROUND(SUM(index_length)/(1024*1024),
6),

MB’)
AS
‘Total
Index
Size’
FROM
information_schema.TABLES
WHERE
table_schema
LIKE
‘database’;
其中,database是待查看数据库的名称,例如:lsqdb%。运行结果如下图所示:
2.
查看数据库的数据空间大小
在MySQL
Workbench中运行以下SQL语句:

以GB为单位
SELECT
CONCAT(ROUND(SUM(data_length)/(1024*1024*1024),
6),

GB’)
AS
‘Total
Data
Size’
FROM
information_schema.TABLES
WHERE
table_schema
LIKE
‘database’;

以MB为单位
SELECT
CONCAT(ROUND(SUM(data_length)/(1024*1024),
6),

MB’)
AS
‘Total
Data
Size’
FROM
information_schema.TABLES
WHERE
table_schema
LIKE
‘database’;
其中,database是待查看数据库的名称,例如:lsqdb%。运行结果如下图所示:
3.
查看数据库中所有表的信息
在MySQL
Workbench中运行以下SQL语句,查看数据库中所有表的表名、表行数、数据空间大小、索引空间大小和总大小:
SELECT
CONCAT(table_schema,’.’,table_name)
AS
‘Table
Name’,
table_rows
AS
‘Number
of
Rows’,
CONCAT(ROUND(data_length/(1024*1024),6),’
MB’)
AS
‘Data
Size’,
CONCAT(ROUND(index_length/(1024*1024),6),’
MB’)
AS
‘Index
Size’,
CONCAT(ROUND((data_length+index_length)/(1024*1024),6),’
MB’)
AS’Total
Size’
FROM
information_schema.TABLES
WHERE
table_schema
LIKE
‘database’;
其中,database是待查看数据库的名称,例如:lsqdb%。

② 怎么查看oracle表空间,剩余大小,表空间利用

1、因为oracle运行在Linux系统下,首先,要连接Linux系统。


③ 如何查询表空间用SQL命令

sql系统存储过程:sp_spaceused '表名',可以查看表使用空间的情况。

如图 data,即已使用的空间

④ 怎么查看oracle数据库表的大小

1. 查看所有表空间大小 SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_data_files 2 group by tablespace_name; 2. 已经使用的表空间大小 SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_free_space 2 group by tablespace_name; 3. 所以使用空间可以这样计算 select a.tablespace_name,total,free,total-free used from ( select tablespace_name,sum(bytes)/1024/1024 total from dba_data_files group by tablespace_name) a, ( select tablespace_name,sum(bytes)/1024/1024 free from dba_free_space group by tablespace_name) b where a.tablespace_name=b.tablespace_name; 4. 下面这条语句查看所有segment的大小。 Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name 5. 还有在命令行情况下如何将结果放到一个文件里。 SQL> spool out.txt SQL> select * from v$database; SQL> spool off

⑤ 如何查看SQL server中各表占用空间的大小,并排列输出

创建存储过程:

CREATEPROCEDURE[dbo].[sys_viewTableSpace]
AS
BEGIN
SETNOCOUNTON;
CREATETABLE[dbo].#tableinfo(
表名[varchar](50)COLLATEChinese_PRC_CI_ASNULL,
记录数[int]NULL,
预留空间[varchar](50)COLLATEChinese_PRC_CI_ASNULL,
使用空间[varchar](50)COLLATEChinese_PRC_CI_ASNULL,
索引占用空间[varchar](50)COLLATEChinese_PRC_CI_ASNULL,
未用空间[varchar](50)COLLATEChinese_PRC_CI_ASNULL
)
insertinto#tableinfo(表名,记录数,预留空间,使用空间,索引占用空间,未用空间)
execsp_MSforeachtable"execsp_spaceused'?'"
select*from#tableinfo
orderby记录数desc
droptable#tableinfo
END


使用的时候直接:execsys_viewtablespace

⑥ 如何查看临时表空间的大小和剩余空间

1、查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;select status,enabled, name, bytes/1024/1024 file_size from v_$tempfile;--sys用户查看2、缩小临时表空间大小
alter database tempfile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TELEMT\TEMP01.DBF' resize 100M;3、扩展临时表空间:
方法一、增大临时文件大小:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;方法二、将临时数据文件设为自动扩展:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;方法三、向临时表空间中添加数据文件:
SQL> alter tablespace temp add tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ size 100m;4、创建临时表空间:
SQL> create temporary tablespace temp1 tempfile ‘/u01/app/oracle/oradata/orcl/temp11.dbf’ size 10M;5、更改系统的默认临时表空间:
--查询默认临时表空间
select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';--修改默认临时表空间
alter database default temporary tablespace temp1;所有用户的默认临时表空间都将切换为新的临时表空间:
select username,temporary_tablespace,default_ from dba_users;--更改某一用户的临时表空间:
alter user scott temporary tablespace temp;6、删除临时表空间
删除临时表空间的一个数据文件:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ drop;删除临时表空间(彻底删除):
SQL> drop tablespace temp1 including contents and datafiles cascade constraints;7、查看临时表空间的使用情况(GV_$TEMP_SPACE_HEADER视图必须在sys用户下才能查询)GV_$TEMP_SPACE_HEADER视图记录了临时表空间的使用大小与未使用的大小dba_temp_files视图的bytes字段记录的是临时表空间的总大小SELECT temp_used.tablespace_name,
total - used as "Free",
total as "Total",
round(nvl(total - used, 0) * 100 / total, 3) "Free percent"FROM (SELECT tablespace_name, SUM(bytes_used) / 1024 / 1024 usedFROM GV_$TEMP_SPACE_HEADER
GROUP BY tablespace_name) temp_used,
(SELECT tablespace_name, SUM(bytes) / 1024 / 1024 totalFROM dba_temp_files
GROUP BY tablespace_name) temp_total
WHERE temp_used.tablespace_name = temp_total.tablespace_nameORDER BY B.TABLESPACE, B.SEGFILE#, B.SEGBLK#, B.BLOCKS;

⑦ Mysql中有没有查询表空间大小这样的sql语句

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| hnmcc |
| hnmcc_ecp |
| hnmcc_push |
| hnmcc_sso |
| mysql |
| percona |
| performance_schema |
| test |
+--------------------+
9 rows in set (0.00 sec)
// 使用mysql自带管理表information_schema.
mysql> use information_schema;
mysql> select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data from TABLES where table_schema='hnmcc' and table_name='l_log_20160102';
+-----------+
| data |
+-----------+
| 4803.00MB |
+-----------+
1 row in set (0.00 sec)

⑧ oracle数据库如何查看表空间大小

1.查看Oracle数据库中表空间信息的工具方法: 使用oracle enterprise manager console工具,这是oracle的客户端工具,当安装oracle服务器或客户端时会自动安装此工具,在...
2.查看Oracle数据库中表空间信息的命令方法: 通过查询数据库系统中的数据字典表(data dictionary tables)获取表空间的相关信息,首先使用客户端工具连接到数据库,这些工具可以是SQL..