Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • fuser to check who is using diretory Linux/Unix
  • Search and replace editor command in vi Linux/Unix
  • Physical Standby switchover with session active Oracle
  • Export With Query Another Example. Oracle
  • Import and export statements Oracle
  • TNSNAMES entries details Oracle
  • In Addition to previous note, following grants needed on PERFSTAT user. Oracle
  • Mutating Table Error while using database trigger Oracle
  • nfs mount command Linux/Unix
  • Find_table_size.sql Oracle
  • When error comes for temporary tablespace with version <= 9i Oracle
  • Building Our Own Namespaces with “Create Context” Oracle
  • scp with ssh2 Linux/Unix
  • create a folder in multiple places Linux/Unix
  • load SPM baseline from cursor cache 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

  • Day to day MYSQL DBA operations (Compared with Oracle DBA) MYSQL
  • V$INSTANCE of Oracle in MYSQL MYSQL
  • MYSQL for Oracle DBA MYSQL
  • Oracle vs MYSQL Architecture differences (For DBAs) MYSQL

Leave a Reply Cancel reply

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

Categories

  • Ansible (0)
  • AWS (2)
  • Azure (1)
  • Linux/Unix (149)
  • MYSQL (5)
  • Oracle (393)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (0)
  • 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

  • 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
  • V$INSTANCE of Oracle in MYSQL24-Jul-2025
  • Day to day MYSQL DBA operations (Compared with Oracle DBA)24-Jul-2025

Archives

  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • Session_info.ksh Linux/Unix
  • Good notes on Oracle Events Oracle
  • reset Sequence Oracle
  • Monitor and Trace Unix processes using truss Linux/Unix
  • Finding last recovered file on DR and remove all chanracters before any “/” Linux/Unix
  • export import with parameter file. Oracle
  • block_ident.sql Oracle
  • sid_wise_sql.sql Further explaination Oracle

Copyright © 2025 pvmehta.com.

Powered by PressBook News WordPress theme