13 prosince, 2021

deník Geek

následující příklad popisuje operace databáze Oracle na nejzákladnější úrovni. Ilustruje konfiguraci databáze Oracle, ve které je uživatel a přidružený proces serveru na samostatných počítačích připojených prostřednictvím sítě.

 jak se sql dotaz provádí v databázi oracle

1. Instance byla spuštěna v uzlu, kde je nainstalována databáze Oracle, často nazývaná hostitelský nebo databázový server.

2. Uživatel spustí aplikaci, která vytváří uživatelský proces. Aplikace se pokusí navázat připojení k serveru. (Připojení může být lokální, klient / server nebo třístupňové připojení ze střední úrovně.)

3. Server spouští posluchače, který má příslušnou obslužnou rutinu Oracle Net Services. Posluchač detekuje požadavek na připojení z aplikace a vytvoří proces dedikovaného serveru jménem uživatelského procesu.

4. Uživatel spustí příkaz SQL typu DML a transakci provede. Uživatel například změní adresu zákazníka v tabulce a provede změnu.

5. Proces serveru obdrží příkaz a zkontroluje sdílený fond (součást SGA) pro jakoukoli sdílenou oblast SQL, která obsahuje identický příkaz SQL. Pokud je nalezena sdílená oblast SQL, proces serveru zkontroluje přístupová oprávnění uživatele k požadovaným datům uživatele a ke zpracování příkazu se použije existující sdílená oblast SQL. Pokud sdílená oblast SQL není nalezena, je pro příkaz přidělena nová sdílená oblast SQL, aby mohla být analyzována a zpracována.

6. Proces serveru načte všechny potřebné datové hodnoty, a to buď ze skutečného datového souboru (tabulky) nebo z hodnot uložených v mezipaměti vyrovnávací paměti databáze.

7. Proces serveru upravuje data v SGA. Protože je transakce odevzdána, proces zapisování protokolu (LGWR)okamžitě zaznamená transakci do souboru protokolu redo. Databáze Writer process (DBWn) zapíše upravené bloky trvale na disk, když je to efektivní, aby tak učinily.

8. Pokud je transakce úspěšná, proces serveru odešle zprávu přes síť do aplikace. Pokud není úspěšný, odešle se chybová zpráva.

9. Během celého tohoto postupu běží další procesy na pozadí a sledují podmínky, které vyžadují zásah. Kromě toho databázový server spravuje transakce ostatních uživatelů a zabraňuje sporům mezi transakcemi, které vyžadují stejná data.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.