Heim Datenbank MySQL-Tutorial Oracle 11g R2 新特性:Deferred Segment Generation

Oracle 11g R2 新特性:Deferred Segment Generation

Jun 07, 2016 pm 03:02 PM
oracle 新特性 特性

当你安装一个包含成千上万的表和索引的应用时,如果每个表和索引都初始分配一个 10MB 的初始 extent 。你很快会意识到如果每个对象在创建时都要分配 10 MB 的磁盘空间,则部署 DDL 需要花费大量的时间。你可能会想到让 Oracle 延迟每个对象的初始 extent 分

当你安装一个包含成千上万的表和索引的应用时,如果每个表和索引都初始分配一个 10MB的初始 extent。你很快会意识到如果每个对象在创建时都要分配 10 MB的磁盘空间,则部署DDL需要花费大量的时间。你可能会想到让 Oracle延迟每个对象的初始extent分配直到该表中实际插入记录为止。

要延迟对象初始 segment的生成,唯一的方式就是使用 Oracle Database 11g R2。从  Oracle Database 11g R2以后,默认情况下,表(及其关联的索引)的物理 extent分配会延迟到该表插入首条记录时。

下面我们以一个简单的小例子来说明这一新特性:

 

首先,我们新建一张表(不插入任何记录):

SQL> create tabletest as select * from emp where 1=2;

Table created.

 

然后,我们查询 USER_SEGMENTS USER_EXTENTS来验证该表是否分配了物理的存储空间:

 

SQL> selectcount(*) from user_segments where segment_name='TEST';

  COUNT(*)

----------

         0

 

SQL> selectcount(*) from user_extents where segment_name ='TEST';

  COUNT(*)

----------

         0

 

接下来我们往新建的 TEST表中插入一条记录,验证记录插入后是否为该表分配存储空间:

 

 

SQL> insert intotest select * from emp where rownum

1 row created.

 

SQL> selectcount(*) from user_extents where segment_name ='TEST';

  COUNT(*)

----------

         1

 

SQL> selectcount(*) from user_segments where segment_name='TEST';

  COUNT(*)

----------

         1

 

上面的行为与之前的 Oracle版本有很大区别。在之前的Oracle版本中,只要创建一个对象,就会为该对象分配初始化 segment及相应的 extentDeferred segment generation同样适用于分区表和分区索引。表在其初始记录插入之前不会分配初始 extent空间。

 

Oracle Database 11g R2以后,对于在 local managed的表空间中创建的非分区堆表,其初始 segment会延迟到该表中的第一条记录插入时创建。

 

Oracle 11g R2 的新特性deferred segment creation

 

在创建表对象时不会分配任何物理存储空间,直至该表插入首条记录时才会分配初始 segment空间。这使得与之前的Oracle版本相比,在表中插入第一条记录时的速度要稍显得慢点,对于大多数场景,这种性能上的影响基本可以忽略。

 

DEFERRED_SEGMENT_CREATION初始化参数设置为 FALSE可以禁用deferred segment creation特性。此参数的默认值为 TRUE。我们还可以在创建表时指定如下子句(新特性)来控制deferredsegment creation

行为:

 SEGMENT CREATION IMMEDIATE and SEGMENT CREATION DEFERRED

 

示例如下:

 

create table f_regs(

reg_id number

,reg_namevarchar2(2000))

segment creationimmediate;

 

注意要使用SEGMENTCREATION DEFERRED子句,必须将 COMPATIBLE参数设置为11.2.0.0.0及以上版本。


作者:xiangsir

9063657

QQ:444367417

MSN:xiangsir@hotmail.com


Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So importieren Sie die Oracle -Datenbank So importieren Sie die Oracle -Datenbank Apr 11, 2025 pm 08:06 PM

Datenimportmethode: 1. Verwenden Sie das SQLLoader -Dienstprogramm: Datendateien vorbereiten, Steuerdateien erstellen und SQLLOADER ausführen. 2. Verwenden Sie das IMP/Exp -Tool: Daten exportieren, Daten importieren. Tipp: 1. Empfohlener SQL*Loader für Big -Data -Sets; 2. Die Zieltabelle sollte vorhanden und die Spaltendefinition entspricht. 3. Nach dem Import muss die Datenintegrität überprüft werden.

So überprüfen Sie die Tabellenraumgröße von Oracle So überprüfen Sie die Tabellenraumgröße von Oracle Apr 11, 2025 pm 08:15 PM

Um die Oracle -Tablespace -Größe abzufragen, führen Sie die folgenden Schritte aus: Bestimmen Sie den Namen Tablespace, indem Sie die Abfrage ausführen: Wählen Sie Tablespace_Name aus dba_tablespaces. Abfragen Sie die Tablespace -Größe durch Ausführen der Abfrage: Summe (Bytes) als Total_Size, sum (bytes_free) als verfügbare_space, sum

So erstellen Sie eine Tabelle in Oracle So erstellen Sie eine Tabelle in Oracle Apr 11, 2025 pm 08:00 PM

Das Erstellen einer Oracle -Tabelle umfasst die folgenden Schritte: Verwenden Sie die Tabellensyntax erstellen, um Tabellennamen, Spaltennamen, Datentypen, Einschränkungen und Standardwerte anzugeben. Der Tabellenname sollte präzise und beschreibend sein und 30 Zeichen nicht überschreiten. Der Spaltenname sollte beschreibend sein und der Datentyp gibt den in der Spalte gespeicherten Datentyp an. Die Nicht -Null -Einschränkung stellt sicher, dass Nullwerte in der Spalte nicht zulässig sind, und die Standardklausel gibt die Standardwerte für die Spalte an. Primärschlüsseleinschränkungen zur Ermittlung des eindeutigen Datensatzes der Tabelle. Die Einschränkung der Fremdschlüssel gibt an, dass sich die Spalte in der Tabelle auf den Primärschlüssel in einer anderen Tabelle bezieht. Siehe die Erstellung der Schülertabellenstudenten, die Primärschlüssel, eindeutige Einschränkungen und Standardwerte enthält.

So fügen Sie Oracle Tabellenfelder hinzu So fügen Sie Oracle Tabellenfelder hinzu Apr 11, 2025 pm 07:30 PM

Verwenden Sie die Anweisung für die Änderung der Tabelle, die spezifische Syntax lautet wie folgt: Alter table table_name add column_name data_type [Constraint-Clause]. Wo: table_name der Tabellenname ist, Spalten_Name ist der Feldname, Data_Type ist der Datentyp, und die Einschränkungsklausel ist eine optionale Einschränkung. Beispiel: Änderung der Tabelle Mitarbeiter Fügen Sie der Mitarbeitertabelle eine E -Mail -Varchar2 (100) hinzu.

Was tun, wenn das Orakel nicht geöffnet werden kann Was tun, wenn das Orakel nicht geöffnet werden kann Apr 11, 2025 pm 10:06 PM

Lösungen für Oracle können nicht geöffnet werden, einschließlich: 1. Starten Sie den Datenbankdienst; 2. Starten Sie den Zuhörer; 3.. Hafenkonflikte prüfen; 4. Umgebungsvariablen korrekt einstellen; 5. Stellen Sie sicher, dass die Firewall- oder Antivirus -Software die Verbindung nicht blockiert. 6. Überprüfen Sie, ob der Server geschlossen ist. 7. Verwenden Sie RMAN, um korrupte Dateien wiederherzustellen. 8. Überprüfen Sie, ob der TNS -Dienstname korrekt ist. 9. Netzwerkverbindung prüfen; 10. Oracle Software neu installieren.

Wie man verstümmelte Code in Oracle löst Wie man verstümmelte Code in Oracle löst Apr 11, 2025 pm 10:09 PM

Oracle -verstümmelte Probleme können gelöst werden, indem der Datenbankzeichen gesetzt wird, um sicherzustellen, dass sie mit den Daten übereinstimmen. Legen Sie den Client -Zeichen für die Datenbank fest. Konvertieren Sie Daten oder ändern Sie Spaltenzeichen -Sets so, dass sie Datenbankzeichen -Sets übereinstimmen. Verwenden Sie Unicode -Zeichensätze und vermeiden Sie Multibyte -Zeichensätze. Überprüfen Sie, ob die Spracheinstellungen der Datenbank und des Clients korrekt sind.

Wie man Orakel wiedergegeben Wie man Orakel wiedergegeben Apr 11, 2025 pm 07:33 PM

Oracle bietet mehrere Deduplication -Abfragemethoden: Das bestimmte Schlüsselwort gibt für jede Spalte einen eindeutigen Wert zurück. Die Gruppe nach Klausel gruppiert die Ergebnisse und gibt für jede Gruppe einen nicht repetitiven Wert zurück. Das eindeutige Schlüsselwort wird verwendet, um einen Index mit nur eindeutigen Zeilen zu erstellen, und das Abfragen des Index wird automatisch dedupliziert. Die Funktion row_number () weist eindeutige Zahlen und filtert Ergebnisse aus, die nur Zeile 1 enthalten. Die Funktion min () oder max () gibt nicht repetitive Werte einer numerischen Spalte zurück. Der Schnittbetreiber gibt die gemeinsamen Werte der beiden Ergebnissätze zurück (keine Duplikate).

Wie man die Oracle -Installation deinstalliert Wie man die Oracle -Installation deinstalliert Apr 11, 2025 pm 08:24 PM

Deinstallieren Sie die Methode für Oracle -Installationsfehler: Schließen Sie den Oracle -Service, löschen Sie Oracle -Programmdateien und Registrierungsschlüssel, Deinstallieren Sie Oracle -Umgebungsvariablen und starten Sie den Computer neu. Wenn das Deinstall fehlschlägt, können Sie das Oracle Universal Deinstall -Tool manuell deinstallieren.

See all articles