新聞中心
隨著互聯(lián)網(wǎng)時(shí)代的到來(lái),數(shù)據(jù)量越來(lái)越龐大,如何快速了解數(shù)據(jù)庫(kù)容量大小成為IT從業(yè)者首當(dāng)其沖的問(wèn)題。Oracle數(shù)據(jù)庫(kù)是世界上更大的商用數(shù)據(jù)庫(kù)之一,其應(yīng)用廣泛,包括金融、醫(yī)療、等眾多行業(yè)。本文將介紹幾種。

公司專注于為企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、成都外貿(mào)網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、商城開(kāi)發(fā),成都小程序開(kāi)發(fā),軟件定制網(wǎng)站制作等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。憑借多年豐富的經(jīng)驗(yàn),我們會(huì)仔細(xì)了解各客戶的需求而做出多方面的分析、設(shè)計(jì)、整合,為客戶設(shè)計(jì)出具風(fēng)格及創(chuàng)意性的商業(yè)解決方案,成都創(chuàng)新互聯(lián)更提供一系列網(wǎng)站制作和網(wǎng)站推廣的服務(wù)。
1.使用Oracle SQL Developer
Oracle SQL Developer是一款免費(fèi)的數(shù)據(jù)庫(kù)開(kāi)發(fā)工具,其包含了許多有用的功能,其中包括了。只需在SQL Developer中執(zhí)行以下腳本:
SELECT SUM(BYTES)/1024/1024/1024 AS GB FROM DBA_DATA_FILES;
這將返回Oracle數(shù)據(jù)庫(kù)中所有數(shù)據(jù)文件的總大小,以GB為單位。這是一個(gè),只需要幾秒鐘就能得到結(jié)果。
2.使用Oracle Enterprise Manager
Oracle Enterprise Manager是Oracle公司提供的數(shù)據(jù)庫(kù)管理工具,它提供了許多有用的功能,包括監(jiān)控、性能調(diào)優(yōu)、備份等等。在Oracle Enterprise Manager中,可以找到數(shù)據(jù)庫(kù)容量報(bào)告。在報(bào)告中,可以看到數(shù)據(jù)庫(kù)的總大小以及各個(gè)表空間的使用情況。這是一個(gè)很方便的方法,可以讓你了解數(shù)據(jù)庫(kù)容量大小以及各個(gè)表空間的使用情況。
3.使用Oracle命令行工具
除了SQL Developer和Enterprise Manager之外,還可以使用Oracle命令行工具來(lái)了解數(shù)據(jù)庫(kù)容量大小。只需在命令行中執(zhí)行以下腳本:
SELECT SUM(BYTES)/1024/1024/1024 AS GB FROM DBA_DATA_FILES;
這將返回Oracle數(shù)據(jù)庫(kù)中所有數(shù)據(jù)文件的總大小,以GB為單位。與SQL Developer相比,這可能需要更長(zhǎng)的時(shí)間來(lái)得到結(jié)果,但是在沒(méi)有圖形用戶界面的環(huán)境下,這是一個(gè)很好的方法。
4.使用Oracle監(jiān)控工具
如果你是一個(gè)Oracle DBA,那么你可能常常使用Oracle監(jiān)控工具來(lái)監(jiān)控?cái)?shù)據(jù)庫(kù)的健康狀況。其中,有一個(gè)稱為dbms_space.tab_space_usage的存儲(chǔ)過(guò)程可以幫助你快速了解表空間的使用情況。只需執(zhí)行以下腳本即可:
EXEC dbms_space.tab_space_usage(‘TABLESPACE_NAME’,true);
其中,TABLESPACE_NAME是要查詢的表空間名稱。執(zhí)行后,將返回表空間的總大小、已用空間、剩余空間以及已用空間的百分比。這是一個(gè)很好的方法,可以幫助你了解表空間的使用情況。
以上介紹了四種,包括:使用Oracle SQL Developer、使用Oracle Enterprise Manager、使用Oracle命令行工具以及使用Oracle監(jiān)控工具。這些方法都非常方便、快捷,可適用于不同的需求。如果你是一個(gè)Oracle DBA,那么這些方法將非常有用,可以幫助你快速了解數(shù)據(jù)庫(kù)容量大小以及各個(gè)表空間的使用情況。
相關(guān)問(wèn)題拓展閱讀:
- 如何查看oracle數(shù)據(jù)庫(kù)監(jiān)聽(tīng)日志文件目錄及大小
- 如何查看oracle臨時(shí)表空間當(dāng)前使用了多少空間的大小
如何查看oracle數(shù)據(jù)庫(kù)監(jiān)聽(tīng)日志文件目錄及大小
監(jiān)聽(tīng)日志在$ORACLE_BASE/diag/tnslsnr/hostname/listener/trace目亮判脊錄下沖握,文件名為listener.log
上面的hostname根據(jù)你的敬滲實(shí)際主機(jī)名而定
監(jiān)聽(tīng), 使用命令 lsnrctl,就可以看到狀態(tài)。 >lsnrctl >status
如何查看oracle臨時(shí)表空間當(dāng)前使用了多少空間的大小
查看臨時(shí)御猜表空鎮(zhèn)猜型間 (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用戶查看
1、查看臨時(shí)物前尺表空間 (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、縮小臨時(shí)表空間大小
alter database tempfile ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\TELEMT\TEMP01.DBF’ resize 100M;
3、擴(kuò)展臨時(shí)表空間:
方法一、增大臨時(shí)文件大小:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;
方法二、將臨時(shí)數(shù)據(jù)文件設(shè)為自動(dòng)擴(kuò)展:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;
方法三、向臨時(shí)表空間中添加數(shù)據(jù)文件:
SQL> alter tablespace temp add tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ size 100m;
4、創(chuàng)建臨時(shí)表空間:
SQL> create temporary tablespace temp1 tempfile ‘/u01/app/oracle/oradata/orcl/temp11.dbf’ size 10M;
5、更改系統(tǒng)的默認(rèn)臨時(shí)表空間:
–查詢默認(rèn)臨時(shí)表空間罩高
select * from database_properties where property_name=’DEFAULT_TEMP_TABLESPACE’;
–修改默認(rèn)臨時(shí)表空間
alter database default temporary tablespace temp1;
所有用戶的默認(rèn)臨時(shí)表空間都將切換為新的臨時(shí)表空間:
select username,temporary_tablespace,default_ from dba_users;
–更改某一用戶的臨時(shí)表空間:
alter user scott temporary tablespace temp;
6、刪除臨時(shí)表空間
刪除臨時(shí)表空間的一個(gè)數(shù)據(jù)文件:
SQL> alter database tempfile ‘悔皮/u01/app/oracle/oradata/orcl/temp02.dbf’ drop;
刪除臨時(shí)表空間(徹底刪除):
SQL> drop tablespace temp1 including contents and datafiles cascade constraints;
7、查看臨時(shí)表空間的使用情況(GV_$TEMP_SPACE_HEADER視圖必須在sys用戶下才能查詢)
GV_$TEMP_SPACE_HEADER視圖記錄了臨時(shí)表空間的使用大小與未使用的大小
dba_temp_files視圖的bytes字段記錄的是臨時(shí)表空間的總大小
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 used
FROM GV_$TEMP_SPACE_HEADER
GROUP BY tablespace_name) temp_used,
(SELECT tablespace_name, SUM(bytes) / 1024 / 1024 total
FROM dba_temp_files
GROUP BY tablespace_name) temp_total
WHERE temp_used.tablespace_name = temp_total.tablespace_name
ORDER BY B.TABLESPACE, B.SEGFILE#, B.SEGBLK#, B.BLOCKS;
希望能幫到您!
查看“oracle”臨時(shí)表空間當(dāng)前使用了多少空間,培握可按照以下程序。
SELECT d.tablespace_name “Name”配鎮(zhèn)慶, d.status “Status”,
TO_CHAR (NVL (a.BYTES / 1024 / 1024, 0), ‘99,999,990.90’) “Size (M)”,
TO_CHAR (NVL (a.BYTES – NVL (f.BYTES, 0), 0) / 1024 / 1024,
‘.99’
) USE,
TO_CHAR (NVL ((a.BYTES – NVL (f.BYTES, 0)) / a.BYTES * 100, 0),
‘990.00’
) “Used %”
FROM SYS.dba_tablespaces d,
(SELECT tablespace_name, SUM (BYTES) BYTES
FROM dba_data_files
GROUP BY
tablespace_name) a,
(SELECT tablespace_name, SUM (BYTES) BYTES
FROM dba_free_space
GROUP BY tablespace_name) f
WHERE d.tablespace_name = a.tablespace_name(+)
AND d.tablespace_name = f.tablespace_name(+)
AND NOT (d.extent_management LIKE ‘LOCAL’ AND d.CONTENTS LIKE ‘TEMPORARY’)
UNION ALL
SELECT d.tablespace_name “Name”, d.status “Status”旅差,
TO_CHAR (NVL (a.BYTES / 1024 / 1024, 0), ‘99,999,990.90’) “Size (M)”,
TO_CHAR (NVL (t.BYTES, 0) / 1024 / 1024, ‘.99’) USE,
TO_CHAR (NVL (t.BYTES / a.BYTES * 100, 0), ‘990.00’) “Used %”
FROM SYS.dba_tablespaces d,
(SELECT tablespace_name, SUM (BYTES) BYTES
FROM dba_temp_files
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM (bytes_cached) BYTES
FROM v$temp_extent_pool
GROUP BY tablespace_name) t
WHERE d.tablespace_name = a.tablespace_name(+)
AND d.tablespace_name = t.tablespace_name(+)
AND d.extent_management LIKE ‘LOCAL’
AND d.CONTENTS LIKE ‘TEMPORARY’;
先來(lái)說(shuō)說(shuō)臨時(shí)表的概念。 臨時(shí)表顧名思義,就是臨時(shí)的,用完銷毀掉的表。 數(shù)據(jù)既可以保存在臨時(shí)的文件系統(tǒng)上,也可以保存在固定的磁盤文件系統(tǒng)上。 臨時(shí)表有下面幾種:
1全局臨時(shí)表
這種臨時(shí)表從數(shù)據(jù)庫(kù)實(shí)例啟動(dòng)后開(kāi)始生效,在數(shù)據(jù)庫(kù)實(shí)例銷毀后失效。在MySQL里面這種臨時(shí)表對(duì)應(yīng)的是內(nèi)存表,即memory引擎。
2會(huì)話級(jí)別臨時(shí)表
這種臨時(shí)表在用戶登錄系統(tǒng)成功后生效,在用戶退出時(shí)失效。在MySQL里的臨時(shí)表指的就是以 create temporary table 這樣的關(guān)鍵詞創(chuàng)建的表。
3事務(wù)級(jí)別臨時(shí)表
這種臨時(shí)表在事務(wù)開(kāi)始時(shí)生效,事務(wù)提交或者回滾后失效。 在MySQL里面沒(méi)有這種臨時(shí)表,必須利用會(huì)話級(jí)別的臨時(shí)表間接實(shí)現(xiàn)。
4檢索級(jí)別臨時(shí)表
這種臨時(shí)表在SQL語(yǔ)句執(zhí)行之間產(chǎn)生,執(zhí)行完畢后失效。 在MySQL里面這種臨時(shí)表不是很固定,跟隨MySQL默認(rèn)存儲(chǔ)引擎來(lái)變化。比如默認(rèn)存儲(chǔ)引擎是MyISAM,臨時(shí)表的引擎就是MyISAM,并且文件生成形式以及數(shù)據(jù)運(yùn)作形式和MyISAM一樣,只是數(shù)據(jù)保存在內(nèi)存里;如果默認(rèn)引擎是INNODB,那么臨時(shí)表的引擎就是INNODB,此時(shí)它的所有信息都保存在共享表空間ibdata里面。
MySQL 5.7對(duì)于InnoDB存儲(chǔ)引擎的臨時(shí)表空間做了優(yōu)化。在MySQL 5.7之前,INNODB引擎的臨時(shí)表都保存在ibdata里面,而ibdata的貪婪式磁盤占用導(dǎo)致臨時(shí)表的創(chuàng)建與刪除對(duì)其他正常表產(chǎn)生非常大的性能影響。在MySQL5.7中,對(duì)于臨時(shí)表做了下面兩個(gè)重要方面的優(yōu)化:
MySQL5.7 把臨時(shí)表的數(shù)據(jù)以及回滾信息(僅限于未壓縮表)從共享表空間里面剝離出來(lái),形成自己?jiǎn)为?dú)的表空間,參數(shù)為innodb_temp_data_file_path。
在MySQL5.7 中把臨時(shí)表的相關(guān)檢索信息保存在系統(tǒng)信息表中:information_schema.innodb_temp_table_info. 而MySQL 5.7之前的版寬判念本想要查看臨時(shí)表的系統(tǒng)信息是沒(méi)有太好的辦法。
需要注意的一點(diǎn)慎困就是,雖然INNODB臨時(shí)表有自己的表空間,但是目前還不能自己定義臨時(shí)表空間文件沖虧的保存路徑,只能是繼承innodb_data_home_dir。此時(shí)如果想要拿其他的磁盤,比如內(nèi)存盤來(lái)充當(dāng)臨時(shí)表空間的保存地址,只能用老辦法,做軟鏈。舉個(gè)小例子:
我現(xiàn)在用的OS是 Ubuntu12.X,想用tmpfs文件系統(tǒng)充當(dāng)臨時(shí)表空間,
root@ytt-master-VirtualBox:/usr/local/mysql/data# ln -s/run/shm/ /usr/local/mysql/data/tmp_space2
root@ytt-master-VirtualBox:/usr/local/mysql/data#ls -l | grep ‘shm’
lrwxrwxrwx1 root root 9 Nov 13 10:28tmp_space2 -> /run/shm/
然后把
innodb_temp_data_file_path=tmp_space2/ibtmp2:200M:autoextend
添加到my.cnf里的下面一行
重啟MySQL服務(wù)后,
mysql>select @@innodb_temp_data_file_path\G
***************************1. row ***************************
@@innodb_temp_data_file_path:tmp_space2/ibtmp2:200M:autoextend
1 rowin set (0.00 sec)
先寫一個(gè)批量創(chuàng)建臨時(shí)表的存儲(chǔ)過(guò)程:
DELIMITER$$
USE`t_girl`$$
DROPPROCEDURE IF EXISTS `sp_create_temporary_table`$$
CREATEDEFINER=`root`@`localhost` PROCEDURE `sp_create_temporary_table`(
IN f_cnt INT UNSIGNED )
BEGIN
DECLARE i INT UNSIGNED DEFAULT 1;
WHILE i call sp_create_temporary_table(10);
QueryOK, 0 rows affected (0.07 sec)
如果在以前,我們只知道創(chuàng)建了10張臨時(shí)表,但是只能憑記憶或者手工記錄下來(lái)臨時(shí)表的名字等信息。
現(xiàn)在可以直接從數(shù)據(jù)字典里面檢索相關(guān)數(shù)據(jù)。
mysql> select * frominformation_schema.innodb_temp_table_info;
++++++-+
|TABLE_ID | NAME | N_COLS | SPACE| PER_TABLE_TABLESPACE | IS_COMPRESSED |
++++++-+
| 56 | #sql1705_2_9 | 5 | 36 | FALSE | FALSE |
| 55 | #sql1705_2_8 | 5 | 36 | FALSE |FALSE |
| 54 | #sql1705_2_7 | 5 | 36 | FALSE | FALSE |
| 53 | #sql1705_2_6 | 5 | 36 | FALSE | FALSE |
| 52 | #sql1705_2_5 | 5 | 36 | FALSE |FALSE |
| 51 | #sql1705_2_4 | 5 | 36 | FALSE | FALSE |
| 50 | #sql1705_2_3 | 5 | 36 | FALSE | FALSE |
| 49 | #sql1705_2_2 | 5 | 36 | FALSE |FALSE |
| 48 | #sql1705_2_1 | 5 | 36 | FALSE | FALSE |
| 47 | #sql1705_2_0 | 5 | 36 | FALSE | FALSE |
++++++-+
10rows in set (0.00 sec)
查看oracle 數(shù)據(jù)庫(kù)大小的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于查看oracle 數(shù)據(jù)庫(kù)大小,快速了解Oracle數(shù)據(jù)庫(kù)容量大小的方法,如何查看oracle數(shù)據(jù)庫(kù)監(jiān)聽(tīng)日志文件目錄及大小,如何查看oracle臨時(shí)表空間當(dāng)前使用了多少空間的大小的信息別忘了在本站進(jìn)行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
本文名稱:快速了解Oracle數(shù)據(jù)庫(kù)容量大小的方法(查看oracle數(shù)據(jù)庫(kù)大小)
鏈接分享:http://www.dlmjj.cn/article/dhogphh.html


咨詢
建站咨詢
