sql >> Database >  >> RDS >> Oracle

Oracle 12c Belangrijkste nieuwe functies

Ik dacht dat ik mijn beste nieuwe functies zou geven voor de onlangs uitgebrachte Oracle 12c-database. Ik denk dat een van de meest interessante nieuwe functies de Pluggable Database is, maar het lijkt alsof iedereen het daarover heeft. Dus ik zal me concentreren op andere nieuwe functies waarin ik geïnteresseerd ben. Deze lijst staat in willekeurige volgorde.

  • Standaardwaarden voor kolommen op basis van Oracle-reeksen - Dit vereenvoudigt het coderen omdat u geen trigger voor een nieuwe rij hoeft te maken. Dit leidt tot…
  • IDENTITEIT-kolommen - Ik werk met veel ontwikkelaars met een SQL Server-achtergrond die deze functionaliteit kunnen waarderen.
  • Adaptieve query-optimalisatie - De mogelijkheid voor de CBO om te herkennen dat het plan verkeerd was en over te schakelen naar een nieuw plan zonder tussenkomst van DBA, is een grote sprong voorwaarts voor de SQL-uitvoering van Oracle. Dit leidt tot…
  • Dynamische statistieken - Oracle kan detecteren dat de statistieken hebben geleid tot een slecht uitvoeringsplan en nieuwe statistieken gebruiken de volgende keer dat de query wordt uitgevoerd. Bij veel gelegenheden merk ik dat de nachtelijke Stats Gathering-autotask de statistieken van tabellen niet bijwerkt, omdat ze niet als "oud" worden beschouwd, maar dat zouden ze wel moeten zijn. Te vaak repareer ik slecht presterende SQL door simpelweg de statistieken van een tabel en de bijbehorende indexen bij te werken, terwijl dit automatisch voor mij zou moeten gebeuren.
  • Gelijktijdige uitvoering van UNION en UNION ALL – De mogelijkheid om deze branches parallel te schakelen zal leiden tot veel snellere uitvoeringen. In mijn winkel gebruiken we UNION en UNION ALL op veel plaatsen in onze applicatie.
  • Automatische gegevensoptimalisatie (ADO) - De mogelijkheid om oudere gegevens automatisch naar een andere opslaglaag te verplaatsen, vermindert de werklast van de DBA.
  • In-Databaase Archivering – De mogelijkheid om rijen te markeren als “gearchiveerd” en ze te verbergen voor applicatiegebruikers zonder ze te verplaatsen, zal goed worden ontvangen voor mijn bedrijf. We hebben een paar processen waarbij we records van de ene tabel naar de andere verplaatsen om ze te archiveren.
  • LOGTIME-parameter van Data Pump – Tijdstempelregistraties van een Data Pump-run hadden vanaf het begin moeten worden opgenomen.
  • Een databestand online verplaatsen – De mogelijkheid om een ​​databestand te verplaatsen terwijl de tablespace nog ONLINE is en LEES SCHRIJF betekent geen downtime voor die tablespace.
  • Data Guard Fast Sync – Dit zou zomaar de verbetering kunnen zijn waarmee we de MAX PROTECT-modus kunnen implementeren zonder de applicatieprestaties te beïnvloeden. Ik heb hier nog niet mee gespeeld, maar Active Data Guard Far Sync ziet er ook veelbelovend uit.
  • PGA_AGGREGATE_LIMIT – om de totale PGA-grootte echt te beperken.
  • Queryable Patch Inventory – U hoeft niet langer 'opatch lsinventory' te gebruiken als u een query kunt uitvoeren met DBMS_QOPATCH.
  • Laatste inlogtijd – nu beschikbaar in SYS.USER$ is de tijd dat iemand voor het laatst heeft ingelogd met dat gebruikers-ID.

Ik kijk ernaar uit om elk van deze in meer detail te onderzoeken.


  1. MySQL LOG2() Functie – Retourneer de Base-2 logaritme van een waarde

  2. Van Opgeslagen procedure, retourneer OUT-parameter &OUT-cursor &ontleden resultaat (Oracle)

  3. 4 manieren om een ​​lijst met schema's te krijgen in SQL Server Agent (T-SQL)

  4. PostgreSQL IF-instructie