Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • Export Import with QUERY Oracle
  • sqlnet.ora paramters Oracle
  • logminer and my_lbu Oracle
  • Python class import from different folders Python/PySpark
  • Formatter Explain plan Output 1 Oracle
  • Good links for x$ tables in oracle. Oracle
  • fkwoindex.sql /* Find FK without Index */ Oracle
  • currwait.sql Oracle
  • Oracle 11g RAC on OEL 5 and Vmware 2 Oracle
  • Btee and Bitmap Plans in Oracle 9i and higher Oracle
  • secure crt settings Linux/Unix
  • SAN Linux/Unix
  • Adding Datafile on Primary Server and Impact on Standby Server Oracle
  • column level grant syntax Oracle
  • To see mem usage and CPU usage system wide. Linux/Unix

Oracle vs MYSQL Architecture differences (For DBAs)

Posted on 24-Jul-2025 By Admin No Comments on Oracle vs MYSQL Architecture differences (For DBAs)

Here’s a detailed comparison table between Oracle and MySQL architectures, highlighting components, memory structures, process models, transaction behavior, and other key aspects — tailored for an Oracle DBA transitioning to MySQL.


🏗️ Oracle vs MySQL Architecture (Detailed Comparison Table)

Component / AreaOracle RDBMSMySQL (with InnoDB)
Architecture TypeMulti-process architecture (background processes)Single-process, multi-threaded architecture
Core Daemon ProcessMultiple: PMON, SMON, DBWR, LGWR, CKPT, ARCH, etc.Single daemon: mysqld
Storage Engine ModelIntegrated (Oracle controls all storage)Pluggable (e.g., InnoDB, MyISAM, MEMORY) — InnoDB is default
Memory StructuresSGA (shared), PGA (per process)Buffer Pool (InnoDB), Query Cache (deprecated), Thread buffers
• Shared PoolSQL & PL/SQL parsing, dictionary cacheInnoDB uses adaptive hash, no separate “shared pool”
• Buffer CacheCaches data blocks (DB_CACHE_SIZE)InnoDB Buffer Pool (innodb_buffer_pool_size)
• Redo Log BufferStores redo before writing to log filesInnoDB log buffer for redo (innodb_log_buffer_size)
Process / Threading ModelDedicated Server Process or Shared ServerThread-per-connection (within mysqld process)
Background ProcessesExtensive set of helper processesMostly handled by internal threads (e.g., IO, flush, purge threads)
Listener / Networktnslsnr, TNS listener, service namesBuilt-in TCP/IP listener (default port 3306)
Data DictionaryStored in shared pool, access via DBA_, USER_, V$ viewsStored in information_schema, performance_schema, sys, and mysql databases
Transaction ModelFull ACID with undo/redo; UNDO tablespaceFull ACID via InnoDB with MVCC and redo logs
Redo LogsOnline redo logs (redo01.log, etc.)ib_logfile0, ib_logfile1 (InnoDB redo logs)
Undo ManagementSeparate Undo tablespaceRollback segments in InnoDB tablespace
Control FilesYes (control01.ctl, etc.)No direct equivalent. Metadata stored in data dictionary
Datafiles / TablespacesYes (mapped to tablespaces and schema objects)InnoDB manages tablespace files automatically (or innodb_file_per_table)
Temporary TablespacesYes (TEMP)Memory or disk-backed temporary tables, no dedicated TEMP tablespace
Concurrency ControlMVCC + locks + latchesMVCC (via InnoDB), row-level locking
Lock GranularityRow, Block, Table, DDLRow-level (InnoDB), Table-level (MyISAM)
Job SchedulingDBMS_SCHEDULER, DBMS_JOBEvent Scheduler (via CREATE EVENT)
ReplicationAdvanced (Data Guard, Streams, GoldenGate)Built-in replication (async, semi-sync, GTID); also InnoDB Cluster
Backup OptionsRMAN, datapump (expdp/impdp), cold backupLogical: mysqldump, Physical: xtrabackup, mysqlpump
SecurityRoles, profiles, fine-grained access, auditingUsers + GRANTs; roles introduced in MySQL 8.0
High AvailabilityRAC, Data GuardGroup Replication, MySQL InnoDB Cluster, Galera
PL/SQL SupportFull support for PL/SQLLimited stored procedures/functions (no packages, no exception, limited cursors)
PartitioningNative, rich (range, list, hash, composite)Supported in InnoDB (range, list, hash), but less powerful
Advanced FeaturesFlashback, Resource Manager, VPD, etc.Limited. MySQL Enterprise includes Firewall, Audit plugin, etc.

🔧 Key Observations for Oracle DBAs

  • No redo/archive distinction in MySQL — redo-like logging is handled by InnoDB internally.
  • No equivalent to control files, listener.ora, tnsnames.ora — simpler networking.
  • Monitoring & troubleshooting in MySQL is done via SHOW, INFORMATION_SCHEMA, performance_schema.
  • Memory management is mostly global (innodb_buffer_pool_size) — no SGA/PGA split.
  • Background process architecture is simpler, but less tunable compared to Oracle.
  • SQL syntax differences: MySQL lacks advanced PL/SQL constructs (like packages, exceptions, etc.).

MYSQL

Post navigation

Previous Post: V$INSTANCE of Oracle in MYSQL
Next Post: Checking SQL Server Version

Related Posts

  • MYSQL and Oracle Comparison for Oracle DBA MYSQL
  • Day to day MYSQL DBA operations (Compared with Oracle DBA) MYSQL
  • MYSQL for Oracle DBA MYSQL
  • V$INSTANCE of Oracle in MYSQL MYSQL

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Categories

  • Ansible (0)
  • AWS (2)
  • Azure (1)
  • Django (0)
  • GIT (1)
  • Linux/Unix (149)
  • MYSQL (5)
  • Oracle (402)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (1)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (18)
  • rman-dataguard (26)
  • shell (150)
  • SQL scripts (350)
  • SQL Server (6)
  • Uncategorized (5)
  • Videos (0)

Recent Posts

  • SAT Mathematics 10 questions and answer at the end.30-Apr-2026
  • top 10 AI news today30-Apr-2026
  • runon_allpdbs_show_conname.sh23-Apr-2026
  • runon_allcdbs_find_pdbs.sql23-Apr-2026
  • Running PDB on single node in RAC09-Apr-2026
  • find_arc.sql09-Apr-2026
  • pvm_pre_change.sql08-Apr-2026
  • find_encr_wallet.sql08-Apr-2026
  • find_pdbs.sql08-Apr-2026
  • Creating a Container Database using dbaascli08-Apr-2026

Archives

  • 2026
  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • how to find OS block size Oracle
  • To seee semaphores and shared memory segments in Solaris Linux/Unix
  • UNderstand and eliminate Latch contention. Oracle
  • ORA-4031 issue and solution on 09-MAY-2008 Oracle
  • login.sql Oracle
  • Btee and Bitmap Plans in Oracle 9i and higher Oracle
  • before_trunc.sql Before Truncate table needs to execute following: Oracle
  • Committing distributed transaction using commit force Oracle

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme