Pergi ke kandungan

Pangkalan data Oracle

Daripada Wikipedia, ensiklopedia bebas.
Pangkalan data Oracle
PembangunOracle Corporation
Versi terkini/stabil18c (18.1)[1] (16 Februari 2018; 6 tahun yang lalu (2018-02-16))
Ditulis dalamBahasa himpunan, C, C++[2]
Sistem pengendalianrentas pelantar
JenisMulti-model database
GenrePangkalan data berbilang model
LesenBerhak milik[3]
Format fail boleh ditulis
Format fail boleh dibaca
Pautan berkaitan
Tapak weboracle.com/database
Pautan lainTwitter: OracleDatabase LinkedIn: /oracleautonomousdatabase Sunting ini di Wikidata
sunting · sunting di Wikidata
Lihat pendokumenan templat ini
Lihat pendokumenan templat ini

Pangkalan data Oracle ialah sebuah pengkalan data hubungan objek yang diterbitkan dan dipasarkan oleh Oracle Corporation. Versi asal pangkalan data ini dibangunkan oleh SDL, sebuah syarikat yang dibentuk pada tahun 1977 oleh Larry Ellison bersama rakan serta bekas rakan sekerjanya, Bob Miner dan Ed Oates. Nama Oracle adalah sempena nama kod bagi sebuah projek biayaan CIA yang Larry pernah terlibat semasa masih bekerja di Ampex.

Struktur fizikal dan logik

[sunting | sunting sumber]

Sesebuah sistem pangkalan data Oracle—dicam dengan pengecam sistem atau SID (system identifier) abjad-angka[4]—terdiri daripada sekurang-kurangnya satu tika aplikasi serta storan data. Proses-proses biasa termasuklah PMON (pemantau proses) dan SMON (pemantau sistem).

Data disimpan secara logik dalam bentuk ruang jadual manakala dalam bentuk fail data secara fizikal. Ruang jadual boleh diisi dengan pelbagai jenis segmen ingatan, contohnya Segmen Data, Segmen Indeks, dan sebagainya. Segmen pula terdiri daripada satu atau lebih extent, yakni kelompok-kelompok blok data bersempadan. Blok-blok data membentuk unit asas bagi storan data.

DBA boleh meletakkan quota maksimum pada sesuatu storan mengikut pengguna pada setiap ruang jadual.[5]

Skema pangkalan data

[sunting | sunting sumber]

Kebanyakan pemasangan datang dengan skema lalai bernama SCOTT. Selepas proses pemasangan membuat jadual-jadual contoh, pengguna boleh melog masuk ke pangkalan data menggunakan nama pengguna scott dan kata laluan tiger. Nama skema SCOTT datang daripada nama Bruce Scott, salah seorang pekerja terawal Oracle (pada ketika itu Software Development Laboratories), yang mempunyai seekor kucing bernama Tiger.[6]

Seni bina proses

[sunting | sunting sumber]

Proses Oracle

[sunting | sunting sumber]

Oracle RDBMS selalunya bergantung kepada sekelompok proses yang berjalan serentak di latar sambil berinteraksi dengan pemantau dan mempercepat operasi-operasi pangkalan data. Persekitaran pengendalian yang biasa mungkin melibatkan – sementara mahupun kekal – beberapa proses berdikari berikut (disertakan dengan tatanama singkatannya):[7]

  • penggiliran maju (Qnnn)[8]
  • pengarkib (ARCn)
  • titik semakan (CKPT) *PERLU*
  • coordinator-of-job-queues (CJQn): mewujudkan proses hamba untuk giliran kerja secara dinamik
  • penulis pangkalan data (DBWn) *PERLU*
  • Data Pump master (DMnn)[9]
  • pekerja Data Pump (DWnn)[9]
  • dispatcher (Dnnn): memultipleks proses-proses pelayan bagi pihak pengguna
  • pemantau Data Guard Broker induk (DMON)[10]
  • proses hamba giliran kerja (Jnnn)[11]
  • penulis log (LGWR) *REQUIRED*
  • log-write network-server (LNSn):[12] menyiarkan log-log redo dalam persekitaran Data Guard
  • logical standby coordinator process (LSP0): mengawal aplikasi log Data Guard
  • media-recovery process (MRP): proses berkecuali pelayan pemulian
  • memory-manager process (MMAN): digunakan untuk tugas-tugas pangkalan data dalaman seperti Automatic Shared Memory Management (ASMM)
  • memory-monitor process (MMON): process for automatic problem-detection, self-tuning and statistics-gathering[13]
  • memory-monitor light process (MMNL): gathers and stores Automatic Workload Repository (AWR) data
  • mmon slaves (Mnnnn—M0000, M0001, etc.): background slaves of the MMON process[14]
  • netslave processes (NSVn): Data Guard Broker inter-database communication processes[15]
  • parallel query execution servers (Pnnn)[16]
  • process-monitor process (PMON) *REQUIRED*
  • process-spawner process (PSP0): spawns Oracle background processes after initial instance startup[17]
  • queue-monitor coordinator process (QMNC): dynamically spawns queue monitor slaves[18]
  • queue-monitor processes (QMNn)
  • recoverer process (RECO)
  • remote file-server process (RFS): in Oracle Data Guard, a standby recipient of primary redo-logs[19]
  • monitor for Data Guard management (RSM0): Data Guard Broker Worker process[20]
  • shared server processes (Snnn): serve client-requests
  • space-management coordinator process (SMCO): coordinates space management (from release 11g)[21]
  • system monitor process (SMON) *REQUIRED*

Proses, sambungan dan sesi pengguna

[sunting | sunting sumber]

Istilah Pangkalan data Oracle membezakan istilah sains komputer berbeza dalam menggambarkan bagaimana pengguna akhir berinteraksi dengan pangkalan data:

  • proses pengguna melibatkan penyeruan perisian aplikasi[22]
  • sambungan merujuk kepada laluan yang memautkan proses pengguna kepada tika Oracle[23]
  • sesi terdiri daripada kumpulan-kumpulan interaksi tertentu yang didirikan, di mana setiap kumpulan melibatkan satu proses pelanggan dan satu tika Oracle.[24]

Setiap sesi dalam sesebuah tika memiliki pengenal pasti sesi yakni ID sesi (session ID) atau "SID"[25][26] (tidak sama dengan pengenal pasti sistem Oracle, SID), dan mungkin turuk memiliki SPID (pengenal pasti proses sistem pengendalian) berkait.[27]

  1. ^ Dietrich, Mike (2018-02-16). "Oracle Database 18c : Now available on the Oracle Cloud and Oracle Engineered Systems". Dicapai pada 2018-07-06.
  2. ^ Lextrait, Vincent (March 2016). "The Programming Languages Beacon, v16". Dicapai pada 15 December 2016.
  3. ^ OTN Standard License
  4. ^ Bhakthavatsalam, Namrata (August 2008). "Glossary". Oracle Database Client. Dicapai pada 2008-11-17. The SID automatically defaults to the database name portion of the global database name (sales in the example sales.us.example.com) until you reach eight characters or enter a period. You can accept or change the default value.
  5. ^ Ashdown, Lance; Kyte, Tom (2011). "Oracle Database Concepts: 11g Release 2 (11.2)". Oracle Corporation. Diarkibkan daripada yang asal pada 5 Julai 2013. Dicapai pada 12 Julai 2013. You can use tablespaces to achieve the following goals: [...] Assign a quota (space allowance or limit) to a database user [...] Unknown parameter |deadurl= ignored (bantuan)
  6. ^ Oracle FAQ
  7. ^ "Oracle Process architecture concepts". Download.oracle.com. Dicapai pada 2009-12-19.
  8. ^ Antognini, Christian (2008). Troubleshooting Oracle Performance. Apress Series. Apress. m/s. 71. ISBN 978-1-59059-917-4. Dicapai pada 2011-05-05.
  9. ^ a b Alapati, S (2005). "Chapter 14: Using Data Pump export and import". Expert Oracle Database 10g Administration. ITPro collection. Apress. m/s. 598. ISBN 9781430200666. Dicapai pada 2015-08-11. The worker process is named <instance>_DWnn_<pid>. It is the process that actually performs the heavy-duty work of loading and unloading data. The master process (DMnn) creates the worker process.
  10. ^ Carpenter, Larry (2009). Oracle Data Guard 11g Handbook. et al. Oracle Press. m/s. 173. ISBN 978-0-07-162111-3. Data Guard Monitor (DMON)[:] This Broker-controller process is the main Broker process and is responsible for coordinating all Broker actions as well as maintaining the Broker configuration files.
  11. ^ Debes, Norbert (2009). Secrets of the Oracle Database. Apress series. Apress. m/s. 173. ISBN 978-1-4302-1952-1. Dicapai pada 2011-05-02. The job queue is handled by the job queue coordinator process CJQ0 and job queue slave processes (JNNN). Cite has empty unknown parameter: |chapterurl= (bantuan)
  12. ^ Alapati, Sam; Kim, Charles (2007). "10: Data Guard". Oracle Database 11g: New Features for DBAs and Developers. Expert's voice in Oracle. Apress. m/s. 430–431. ISBN 9781430204695. Dicapai pada 2015-11-24. The optional net_timeout parameter to the log_archive_dest_n parameter allows the DB As to specify the number of seconds the log writer process (LGWR) waits for a response from the logwriter network server (LNS) before terminating the process.
  13. ^ Safaribooksonline.com Niemiec, Richard (25 June 2007). "1.30. New Background Processes in 10g". Oracle Database 10g Performance Tuning: Tips & Techniques. Oracle Press. m/s. 967. ISBN 978-0-07-226305-3. Dicapai pada 2009-08-12. MMON Memory Monitor process is associated with the Automatic Workload Repository new features used for automatic problem detection and self-tuning. MMON writes out the required statistics for AWR on a scheduled basis. Cite has empty unknown parameters: |nopp=, |lastauthoramp=, |laydate=, |chapterurl=, |laysummary=, dan |separator= (bantuan)
  14. ^ Safaribooksonline.comNiemiec, Richard (25 June 2007). "1.30. New Background Processes in 10g". Oracle Database 10g Performance Tuning: Tips & Techniques. Oracle Press. m/s. 967. ISBN 978-0-07-226305-3. Dicapai pada 2009-08-12. M000 These are MMON background slave (m000) processes. Cite has empty unknown parameters: |nopp= dan |chapterurl= (bantuan)
  15. ^ Rich, Bert (2015). "Oracle Database Reference, 11g Release 2 (11.2): Background Processes". docs.oracle.comOracle Help Center. Oracle Corporation. Dicapai pada 2015-08-05. NSVn[:] Data Guard Broker NetSlave Process[:] Performs broker network communications between databases in a Data Guard environment
  16. ^ Kyte, Thomas; Kuhn, Darl (2014). "5: Oracle Processes". Expert Oracle Database Architecture. SpringerLink : Bücher (ed. 3). Apress. m/s. 202. ISBN 9781430262992. Dicapai pada 2016-08-30. Pnnn: Parallel Query Execution Servers [...] Oracle 7.1.6 introduced the parallel query capability into the database. [...] When using parallel query, you see processes named Pnnn. These are the parallel query execution servers themselves.
  17. ^ "Oracle Database Online Documentation 12c Release 1 (12.1) / Database Administration: F Background Processes". Oracle. 2014. m/s. 2497. Diarkibkan daripada yang asal pada 13 November 2014. Dicapai pada 12 November 2014. Process Spawner Process [...] Spawns Oracle background processes after initial instance startup Unknown parameter |deadurl= ignored (bantuan)
  18. ^ Dyke, Julian; Steve Shaw (2006). Pro Oracle database 10g RAC on Linux: installation, administration, and performance. Apress Series. Apress. m/s. 45. ISBN 978-1-59059-524-4. Dicapai pada 2011-05-05. In Oracle 10.1, a queue monitor coordinator (QMNC) process [...] dynamically spawns queue monitor slaves (q000 to q009).
  19. ^ Vallath, Murali (2006). Oracle 10g RAC Grid, Services & Clustering. Digital Press. m/s. 467. ISBN 9780080492032. Dicapai pada 2014-04-14. Redo data transmitted from the primary database is received by the remote file server (RFS) process on the standby system, where the RFS process writes the redo data to archived log files or standby redo log files.
  20. ^ Rich, Bert (2015). "Oracle Database Reference, 11g Release 2 (11.2)". docs.oracle.com. Oracle Corporation. Dicapai pada 2015-05-04. Performs monitoring management tasks related to Data Guard on behalf of DMON
  21. ^ Alapati, Sam; Kim, Charles (2008). Oracle Database 11g: New Features for DBAs and Developers. Expert's voice in Oracle. Apress. m/s. 16. ISBN 9781430204695. Dicapai pada 2016-06-07. New Oracle Background Processes [...] SMCO: the space management coordinator process is in charge of coordinating the work of space management-related tasks such as space reclamation, for example.
  22. ^ Cyran, Michele; Paul Lane (2005). "Process Architecture". Oracle Database Concepts. Oracle Corporation. Dicapai pada 2008-08-13. When a user runs an application program (such as a Pro*C program) or an Oracle tool (such as Enterprise Manager or SQL*Plus), Oracle creates a user process to run the user's application.
  23. ^ Cyran, Michele; Paul Lane (2005). "Process Architecture". Oracle Database Concepts. Oracle Corporation. Dicapai pada 2008-08-13. A connection is a communication pathway between a user process and an Oracle instance.
  24. ^ Cyran, Michele; Paul Lane (2005). "Process Architecture". Oracle Database Concepts. Oracle Corporation. Dicapai pada 2008-08-13. A session is a specific connection of a user to an Oracle instance through a user process
  25. ^ Morales, Tony (2008). "V$SESSION". Oracle Database Reference 11g Release 1 (11.1). Oracle. Dicapai pada 2016-04-07. V$SESSION displays session information for each current session. [...] SID [...] Session identifier
  26. ^ Burleson, Donald K. (2004). Physical Database Design Using Oracle. Foundations of Database Design. CRC Press. m/s. 104. ISBN 9780203506233. Dicapai pada 2016-04-07. [...] Oracle assigns a unique session ID into the v$session table for each individual user logged on to Oracle.
  27. ^ Rich, Kathy (April 2009). "Oracle Database Reference, 10g Release 2 (10.2)" V$PROCESS. docs.oracle.com. Redwood city, California: Oracle Corporation. Dicapai pada 2016-10-30. SPID VARCHAR2(12) Operating system process identifier Invalid |script-title=: missing prefix (bantuan)

Pautan luar

[sunting | sunting sumber]