What does a database administrator do?
A database administrator (DBA) looks after the databases that store an organisation's data.
You install them, keep them running, tune their speed, and make sure the data is safe and can be recovered after a failure.
In Singapore, DBAs work in banks, government agencies, hospitals, telcos, e-commerce firms and IT service providers. They usually sit in an IT infrastructure, data or platform team. Some work for managed service providers that run databases for client companies.
A DBA works with software developers, data engineers, analysts, security teams and system administrators. Developers ask for schema changes. Analysts need fast, reliable access to data. Security and compliance teams set rules on who may see what.
What the work involves
- Check database health, storage and backup jobs each morning, and fix anything that failed overnight.
- Review slow queries with developers and change indexes or query design to speed them up.
- Apply patches and version upgrades in a test environment first, then in production during agreed windows.
- Create user accounts and permissions, and remove access when people change roles or leave.
- Plan capacity by tracking growth in data and traffic, and raise requests for more storage or compute before limits are hit.
Pay in Singapore
The median is S$8,471 a month, gross.
Closest MOM occupation: Data/Database administrator (SSOC 25211). MOM, Occupational Wages 2025, Table 4 (all industries), June 2025. Full-time resident employees; gross monthly wage, excluding bonuses. Full pay data
Skills a database administrator needs
Core skills
- Data modelling
- Identity & access management (IAM)
Tools and platforms
- SQL
- PostgreSQL
- MongoDB
- Redis
- Cloud basics (AWS, Azure, GCP)
- Linux
AI
- ChatGPT
Database administrator job description
We are hiring a database administrator to run and protect our production databases.
You will manage PostgreSQL and other data stores, keep them fast and available, and control who can access them. You will work with developers, data engineers and security staff, and join an on-call rota for incidents.
Responsibilities
- Install, configure and upgrade database servers on Linux and cloud platforms.
- Monitor performance, find slow queries and tune indexes, settings and storage.
- Design and run backup, restore and disaster recovery plans, and test them on a regular schedule.
- Set up replication and failover so that services stay available when a server fails.
- Review schema designs and change requests from developers, and run approved changes safely.
- Manage user accounts, roles and permissions under the principle of least access.
- Keep audit logs and records that support internal audits and data protection requirements.
- Track capacity and growth, and plan storage and compute needs ahead of demand.
- Respond to database incidents, find the cause and write up what went wrong and how to prevent it.
- Write scripts to automate routine checks, deployments and housekeeping tasks.
Requirements
- Diploma or degree in computer science, information technology or a related field, or equivalent hands-on experience.
- Typically 2 to 5 years of experience running production databases for a mid-level role. Entry roles may accept fresh graduates with strong project work.
- Solid SQL skills and working knowledge of PostgreSQL. Familiarity with MongoDB or Redis is often asked for.
- Comfort with Linux command line, shell scripting and basic networking.
- Basic knowledge of AWS, Azure or Google Cloud managed database services, and of backup and access control practices.
Database administrator career path
Most database administrators start in a junior support role and move up through technical depth, then into team leadership or architecture.
The titles below are common in Singapore organisations, though names vary by employer.
Junior database administrator
Entry
You handle routine tasks such as backups, monitoring checks, user accounts and simple queries, under guidance from a senior colleague.
Database administrator
Mid
You own production databases, tune performance, run upgrades and take part in the on-call rota with little supervision.
Senior database administrator
Senior
You design replication and recovery setups, lead complex migrations and advise developers on schema and query design.
Database team lead
Lead
You manage a small team, set standards for operations and security, and plan capacity and upgrades across systems.
Head of data platforms
Head
You set the direction for data infrastructure, manage budgets and vendors, and report on risk and availability to senior management.
The titles are ones commonly used in Singapore; employers may name the levels differently.
Related jobs and their pay
| Related job | Median pay a month | Why it is related |
|---|---|---|
| Data engineer | S$8,721 | You already know how data is stored and moved, so building pipelines and warehouses is a short step. |
| Analytics engineer | S$8,721 | Strong SQL and data modelling skills carry over directly to building clean, tested data models for analysts. |
| Business intelligence (BI) analyst | S$8,445 | Knowing how data is structured helps you build reliable reports and dashboards, if you prefer working closer to the business. |
MOM Occupational Wages 2025, gross monthly wage, full-time resident employees. Each figure links to its salary guide.
Database administrator interview questions
We wrote these questions from the skills this job needs. They are not an official question bank.
When would you choose PostgreSQL over MongoDB for a new application, and when the reverse?
What a good answer covers
- Names PostgreSQL for structured data, joins and strong transactions
- Names MongoDB for flexible document shapes and fast-changing fields
- Mentions how the data will be queried and reported on
- Notes that PostgreSQL also supports JSON, so the line between them blurs
- Considers team skills and operating cost
A PostgreSQL query that used to take 200 milliseconds now takes 30 seconds. How do you find the cause?
What a good answer covers
- Runs EXPLAIN ANALYZE to see the query plan
- Checks for missing or unused indexes
- Looks at table statistics, bloat and whether autovacuum is keeping up
- Checks for locks or blocking sessions
- Compares with recent changes in data volume, code or settings
Write a SQL query that lists customers who placed more than three orders in the last 30 days. Which index would help?
What a good answer covers
- Uses GROUP BY with HAVING COUNT and a date filter
- Joins to the customer table only if names are needed
- Suggests an index on customer ID and order date
- Explains how to check the plan to confirm the index is used
- Handles edge cases such as time zones or cancelled orders
Explain third normal form. When would you deliberately denormalise a table?
What a good answer covers
- Describes removing repeated data and dependencies on non-key columns
- Gives a simple example such as customers and orders
- Names reporting speed or read-heavy workloads as reasons to denormalise
- Accepts the cost: duplicate data and harder updates
- Mentions keeping the source of truth clear
How would you design backup and recovery for a production PostgreSQL database?
What a good answer covers
- Defines recovery point and recovery time targets with the business
- Uses full backups plus continuous log archiving for point-in-time recovery
- Stores copies in a separate location or account
- Tests restores on a schedule as well as backups
- Documents the recovery steps for the on-call team
Your team uses Redis as a cache in front of a database. What settings and risks do you check?
What a good answer covers
- Sets a memory limit and an eviction policy that suits the data
- Explains persistence options and when data loss is acceptable
- Plans how cached entries expire or are invalidated
- Watches for a cache stampede when many keys expire together
- Secures access with authentication and network limits
How would you set up access to a production database used by an application, developers and analysts?
What a good answer covers
- Applies least privilege with separate roles for each group
- Gives the application its own account and stores secrets in a vault
- Gives developers and analysts read-only access unless approved
- Logs and reviews privileged actions
- Removes access promptly when people change roles or leave
What are the trade-offs between a managed cloud database service and running a database yourself on a virtual machine?
What a good answer covers
- Managed services handle patching, backups and failover for you
- Self-managed gives more control over settings, extensions and versions
- Compares cost, skills needed and lock-in
- Considers data location, access controls and audit needs
- Gives an example from AWS, Azure or Google Cloud
At night, an alert says the Linux database server's disk is 95% full. What do you do?
What a good answer covers
- Checks which volume is filling using df and du
- Looks at logs, temporary files and write-ahead logs or archives
- Checks for a stuck backup or replication slot holding files
- Frees space safely, leaving the files the database needs
- Raises the cause and a long-term fix, such as alerts or more storage
A developer wants to add a column with a default value to a table with hundreds of millions of rows during business hours. How do you respond?
What a good answer covers
- Asks about the database version and how it handles the change
- Tests the change on a copy of production-sized data
- Checks for table locks and the impact on live traffic
- Proposes an off-peak window or an online migration approach
- Prepares a rollback plan and a communication note
A colleague suggests using ChatGPT to write a migration script. How do you use it safely?
What a good answer covers
- Keeps real customer data and credentials out of the tool
- Treats the output as a draft and reads every line
- Runs the script in a test environment first
- Checks it against the company's policy on AI tools
- Has a second person review it before production
Tell us about a database incident you handled. What happened, and what changed afterwards?
What a good answer covers
- Describes the impact and how it was found
- Explains steps taken in order, and who was told
- Shows calm decision-making under pressure
- Names the root cause and keeps blame off individuals
- Lists the fixes or checks added to prevent a repeat
Describe a time you disagreed with a developer over a schema or access request. How did you settle it?
What a good answer covers
- Explains both sides and the risk involved
- Uses data, such as query plans or audit needs, to back the case
- Offers an alternative that meets the developer's goal
- Keeps the working relationship intact
- Records the decision so others can follow it
Your test environment uses a copy of production data that contains customers' NRIC numbers and phone numbers. What do you do under the Personal Data Protection Act (PDPA)?
What a good answer covers
- Raises that personal data needs protection in test systems as well
- Proposes masking or synthetic data instead of live copies
- Limits who can access the data and logs that access
- Mentions keeping personal data only as long as it is needed
- Involves the data protection officer and refers to current PDPC guidance
You join a bank in Singapore. Which database controls would you expect under Monetary Authority of Singapore (MAS) technology risk expectations?
What a good answer covers
- Names strict access control and regular access reviews
- Mentions audit logging of privileged actions
- Covers backup, recovery testing and high availability
- Describes change control and approval before production changes
- Says you would read the current MAS guidance and the bank's own policies
Common questions about a database administrator job
What is a database?
A database is an organised store of data that software can read, write and search quickly. Examples include a bank's customer records or an online shop's orders. A database administrator keeps such systems running and secure.
What is the difference between relational and non-relational databases?
Relational databases, such as PostgreSQL, store data in tables with fixed columns and link them with keys. Non-relational databases, such as MongoDB or Redis, use other shapes like documents or key-value pairs. The choice depends on how structured the data is and how it will be queried.
What does a database administrator do?
A database administrator installs and maintains databases, tunes their performance and manages backups. You also control access to the data and fix problems when something fails.
Do you need to know SQL to work as a database administrator?
Yes. SQL is the main language for querying and managing relational databases, and almost every DBA role in Singapore asks for it. You will use it daily to check data, tune queries and manage permissions.