溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

為什么bytes的值比maxbytes的值要大

發(fā)布時(shí)間:2021-12-22 09:49:52 來(lái)源:億速云 閱讀:267 作者:iii 欄目:關(guān)系型數(shù)據(jù)庫(kù)

這篇文章主要講解了“為什么bytes的值比maxbytes的值要大”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“為什么bytes的值比maxbytes的值要大”吧!

目的:
本文解釋了DBA_DATA_FILES中bytes的值要比maxbytes的值要大的原因。

描述:
當(dāng)一個(gè)datafile 手工resize到一個(gè)大于maxsize(maxbytes)的值之后,DBA_DATA_FILES中bytes的值要比maxbytes的值要大
當(dāng)該datafile被設(shè)置為autoextend on之后,dba_data_files中的maxbytes 值被自動(dòng)結(jié)算為一個(gè)非零值。
dba_data_files中的bytes是該datafile的當(dāng)前的大?。ㄒ詁ytes為單位)

下面是一個(gè)示例:

解釋?zhuān)?/strong>
當(dāng)datafile 被resize的時(shí)候,dba_data_files中的maxbytes 值 不會(huì)被更新,此時(shí)被更新的列只是bytes列。
dba_data_files中的maxbytes 值是在使用ALTER DATABASE command with MAXSIZE option 時(shí)才會(huì)被更新的。

Step-1: Create a New Tablespace  
======  ===================================================

SQL> create tablespace tst datafile '/u01/app/oracle/oradata/DBdb/tst.dbf' size 5m autoextend on;

Tablespace created.

SQL> col file_name for a60
SQL> set lines 200
SQL>  select file_name, bytes, maxbytes, autoextensible from dba_data_files;  

FILE_NAME                                                              BYTES   MAXBYTES AUT
----------------------------------------------------------------- ---------- ---------- ---
/u01/app/oracle/oradata/DBdb/users01.dbf                          3207331840 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/undotbs01.dbf                        2710568960 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/sysaux01.dbf                          744488960 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/system01.dbf                         2936012800 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/example01.dbf                         355205120 3.4360E+10 YES
/u01/app/oracle/fast_recovery_area/DBDB/newback/ts_xxf_01.dbf       10485760          0 NO
/u01/app/oracle/oradata/DBdb/tst.dbf                                 5242880 3.4360E+10 YES

7 rows selected.


Step-2: Alter the MAXSIZE value from default value  
======  ===================================================

SQL> alter database datafile '/u01/app/oracle/oradata/DBdb/tst.dbf' autoextend on maxsize 10m;  

Database altered.

SQL> select file_name, bytes, maxbytes, autoextensible from dba_data_files;

FILE_NAME                                                              BYTES   MAXBYTES AUT
----------------------------------------------------------------- ---------- ---------- ---
/u01/app/oracle/oradata/DBdb/users01.dbf                          3207331840 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/undotbs01.dbf                        2710568960 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/sysaux01.dbf                          744488960 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/system01.dbf                         2936012800 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/example01.dbf                         355205120 3.4360E+10 YES
/u01/app/oracle/fast_recovery_area/DBDB/newback/ts_xxf_01.dbf       10485760          0 NO
/u01/app/oracle/oradata/DBdb/tst.dbf                                 5242880   10485760 YES

7 rows selected.

Step-3: Resize the datafile to a value higher than MAXBYTES  
======  ===================================================
SQL> alter database datafile '/u01/app/oracle/oradata/DBdb/tst.dbf' resize 20m;

Database altered.

SQL> select file_name, bytes, maxbytes, autoextensible from dba_data_files;

FILE_NAME                                                              BYTES   MAXBYTES AUT
----------------------------------------------------------------- ---------- ---------- ---
/u01/app/oracle/oradata/DBdb/users01.dbf                          3207331840 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/undotbs01.dbf                        2710568960 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/sysaux01.dbf                          744488960 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/system01.dbf                         2936012800 3.4360E+10 YES
/u01/app/oracle/oradata/DBdb/example01.dbf                         355205120 3.4360E+10 YES
/u01/app/oracle/fast_recovery_area/DBDB/newback/ts_xxf_01.dbf       10485760          0 NO
/u01/app/oracle/oradata/DBdb/tst.dbf                                20971520   10485760 YES

7 rows selected.

SQL>

表空間tst(/u01/app/oracle/oradata/DBdb/tst.dbf  )能達(dá)到的最大大小是dba_data_files.bytes的值。

感謝各位的閱讀,以上就是“為什么bytes的值比maxbytes的值要大”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)為什么bytes的值比maxbytes的值要大這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI