Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • pvm_pre_change.sql Oracle
  • send attachment from unix-shell script Linux/Unix
  • tar and untar a dolder with all its subfolder. Linux/Unix
  • ORA-00064: object is too large to allocate on this O/S during startup Oracle
  • How to start CRS manually Oracle
  • refre.sql Oracle
  • get_vmstat.ksh Linux/Unix
  • move_arch_files.ksh Linux/Unix
  • First Entry in RAC Oracle
  • tblwopk.sql tablewopk.sql Oracle
  • Facts about SCN and Rollback Segment Oracle
  • Read CSV file using PySpark Python/PySpark
  • Shuffle an array PHP/MYSQL/Wordpress
  • Drop tempfiles from database Oracle
  • oracle 11g RAC on vmware Oracle

MYSQL and Oracle Comparison for Oracle DBA

Posted on 24-Jul-202524-Jul-2025 By Admin No Comments on MYSQL and Oracle Comparison for Oracle DBA

Here’s a practical comparison of MySQL for Oracle DBAs, focusing on key concepts, terminology, architecture, and daily operations so that you can quickly map your Oracle knowledge to MySQL. I’ll structure it in a table format followed by important notes:


🔁 Oracle to MySQL Mapping Table (Essentials for Oracle DBAs)

Concept / TaskOracleMySQL
RDBMS VendorOracle CorpOracle Corp (owns MySQL), or MariaDB Foundation
ArchitectureMultithreaded, multi-process, SGA, PGAMultithreaded, single-process with storage engines
Default Storage EngineN/A (Oracle has unified engine)InnoDB (transactional, supports ACID, MVCC)
InstanceCombination of memory + background processesmysqld daemon (single process with threads)
Schema vs DatabaseSchema inside a databaseDatabase = Schema (1:1 mapping)
Tablespace / DatafileExplicit datafiles, tablespacesHandled automatically via data directory
Redo / UndoRedo logs, undo tablespaceRedo-like via ib_logfile*, rollback segments in InnoDB
User / Schema SeparationUsers and schemas can be differentUser and schema (database) are separate concepts
PL/SQL / Stored CodePL/SQL (procedures, packages)SQL + stored procedures, functions (limited)
Listenertnslsnr, TNSBuilt-in TCP/IP listener (default port 3306)
Data DictionaryDBA_*, ALL_*, USER_* viewsinformation_schema, performance_schema
Backup / RestoreRMAN, expdp/impdpmysqldump, mysqlpump, xtrabackup
High AvailabilityRAC, Data GuardGroup Replication, InnoDB Cluster, Galera
PartitioningNative & CompositeBasic support (range, list, hash)
Concurrency ControlLocks + Latches + MVCCMVCC (InnoDB), row-level locks
OptimizerCost-based optimizerCost-based optimizer, uses statistics
SQL DifferencesRich PL/SQL, advanced analyticsSimpler SQL, less rich functions than Oracle
TransactionsSupported with full ACID guaranteesOnly with InnoDB or other transactional engines
Job SchedulingDBMS_SCHEDULER, CRON (OS)Event Scheduler, or OS-level cron jobs
Users / RolesUsers + roles + profilesUsers + GRANT system, limited role support
PrivilegesFine-grained roles, auditingGRANTs, but less granular than Oracle
Enterprise FeaturesOracle Advanced Security, Partitioning etc.Enterprise features via MySQL Enterprise

✅ Must-Know Tips for Oracle DBAs Learning MySQL

  1. Installation is Lightweight:
    • A MySQL installation is fast, has minimal dependencies, and is easy to configure via my.cnf.
  2. Storage Engines Matter:
    • InnoDB is the default and supports ACID, transactions, and foreign keys.
    • Other engines (e.g., MyISAM) are deprecated or used for niche use cases.
  3. Query Optimization is Different:
    • Explain plans are not as rich as Oracle’s AUTOTRACE or DBMS_XPLAN.
    • Use EXPLAIN and ANALYZE FORMAT=JSON for deeper insight.
  4. Memory Management:
    • MySQL has configurable buffers like innodb_buffer_pool_size, query_cache_size (deprecated), unlike SGA/PGA in Oracle.
  5. No Packages or Cursors:
    • MySQL does not support packages, and cursors are limited in functionality.
    • You’ll miss DBMS_SQL, DBMS_OUTPUT, DBMS_SCHEDULER.
  6. User Management Simpler:
    • CREATE USER, GRANT, and REVOKE are primary tools.
    • Role support introduced in MySQL 8, but not as powerful as Oracle roles.
  7. Backup & Recovery:
    • Logical backups via mysqldump are simple but slow for large DBs.
    • Physical backups via Percona Xtrabackup or mysqlhotcopy (legacy) recommended for larger environments.
  8. Replication is Built-in:
    • Simple async replication (master-slave) is very popular.
    • Semi-sync, group replication, and clustering require more config.
  9. Data Dictionary Access:
    • Use information_schema.tables, columns, statistics, etc.
    • Similar to Oracle’s DBA_TABLES, DBA_TAB_COLUMNS.
  10. Error Logging & Audit:
  • No native auditing like AUDIT TRAIL; logs go to mysql_error.log or general logs.
  • Enterprise MySQL has plugin-based auditing.

🔍 Useful MySQL Commands for Oracle DBAs

-- Show databases (schemas)
SHOW DATABASES;

-- Show tables
USE db_name;
SHOW TABLES;

-- Describe table
DESCRIBE table_name;

-- View running queries
SHOW FULL PROCESSLIST;

-- Create user and grant
CREATE USER 'john'@'%' IDENTIFIED BY 'pass';
GRANT SELECT, INSERT ON mydb.* TO 'john'@'%';

-- View variables and status
SHOW VARIABLES;
SHOW GLOBAL STATUS;

-- Explain plan
EXPLAIN SELECT * FROM employees;

-- Backup
mysqldump -u root -p mydb > mydb.sql;

MYSQL

Post navigation

Previous Post: MYSQL for Oracle DBA
Next Post: Day to day MYSQL DBA operations (Compared with Oracle DBA)

Related Posts

  • Oracle vs MYSQL Architecture differences (For DBAs) MYSQL
  • V$INSTANCE of Oracle in MYSQL MYSQL
  • Day to day MYSQL DBA operations (Compared with Oracle DBA) MYSQL
  • MYSQL for Oracle DBA 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 (393)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (1)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (17)
  • rman-dataguard (26)
  • shell (149)
  • SQL scripts (342)
  • SQL Server (6)
  • Uncategorized (0)
  • Videos (0)

Recent Posts

  • Complete Git Tutorial for Beginners25-Dec-2025
  • Postgres DB user and OS user.25-Dec-2025
  • Trace a SQL session from another session using ORADEBUG30-Sep-2025
  • SQL Server Vs Oracle Architecture difference25-Jul-2025
  • SQL Server: How to see historical transactions25-Jul-2025
  • SQL Server: How to see current transactions or requests25-Jul-2025
  • T-SQL Vs PL/SQL Syntax25-Jul-2025
  • Check SQL Server edition25-Jul-2025
  • Checking SQL Server Version25-Jul-2025
  • Oracle vs MYSQL Architecture differences (For DBAs)24-Jul-2025

Archives

  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • sql_plan9i.sql Oracle
  • S3 Basic info AWS
  • Jai Shree Ram PHP/MYSQL/Wordpress
  • Find Time Consuming SQL Statements in Oracle 10g Oracle
  • DBMS_Shared_pool pinning triggers Oracle
  • Running some SQL on multiple databases connecting using monitoring userid and password Linux/Unix
  • Load testing on Oracle 19C RAC with HammerDB Oracle
  • shr1.sql for MTS or Shared server configuration Oracle

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme