Roles and Responsibilities:
Database Administration & Maintenance:
- Install, configure, upgrade, and maintain MySQL database instances (primarily MySQL 5.7/8.0).
- Perform routine database maintenance tasks: backups, recovery, patching, and user management.
- Monitor database health, performance, and availability using tools like MySQL Enterprise Monitor, Percona Monitoring and Management (PMM), or custom scripts.
- Implement and manage database replication (standard and GTID) for high availability and disaster recovery.
- Manage database security: user access control, privileges, and auditing.
Performance Tuning & Optimization:
- Identify and troubleshoot slow queries using tools like EXPLAIN, pt-query-digest, and performance schema.
- Perform query optimization and index tuning to improve application performance.
- Monitor and optimize key performance metrics (e.g., CPU, memory, I/O, locks, connections).
- Conduct routine database capacity planning.
High Availability & Disaster Recovery:
- Support and maintain high availability solutions like MySQL InnoDB Cluster, Group Replication, or standard master-slave replication.
- Develop, test, and execute robust backup and recovery strategies using tools like mysqldump, mysqlpump, XtraBackup, or native snapshots.
- Participate in Disaster Recovery (DR) drills to ensure business continuity.
Collaboration & Support:
- Collaborate with software developers on schema design, SQL query review, and deployment processes.
- Provide 24/7 on-call support on a rotational basis for critical production database issues.
- Create and maintain clear documentation for processes, procedures, and configurations.
- Work within defined ITIL processes for change, incident, and problem management.
Required Qualifications & Skills
- 2+ years of hands-on professional experience as a MySQL Database Administrator.
- Strong proficiency in MySQL database management, architecture, and internals (e.g., storage engines, locking mechanisms).
Must-Have Technical Skills:
- Solid experience with MySQL replication (Standard and GTID).
- Proven experience with MySQL backup and recovery procedures (mysqldump, XtraBackup).
- Strong SQL skills and experience with performance tuning and optimization.
- Experience with monitoring tools (e.g., PMM, Nagios, Zabbix, Grafana).
- Familiarity with Linux/Unix operating systems and shell scripting.
Nice-to-Have:
- Experience with MySQL 8.0 features.
- Exposure to cloud database platforms (AWS RDS/Aurora, Google Cloud SQL, Azure Database for MySQL).
- Familiarity with other database technologies (e.g., PostgreSQL, MongoDB, Redis).
- Knowledge of automation and scripting languages (e.g., Python, Ansible).
- Understanding of DevOps practices and CI/CD pipelines.