Title: Ozeki Database Backup for S3
Author: ozekihiroshi
Published: <strong>August 22, 2026</strong>
Last modified: August 22, 2026

---

Search plugins

![](https://ps.w.org/ozeki-database-backup-for-s3/assets/banner-772x250.png?rev=
3660066)

![](https://ps.w.org/ozeki-database-backup-for-s3/assets/icon-256x256.png?rev=3660066)

# Ozeki Database Backup for S3

 By [ozekihiroshi](https://profiles.wordpress.org/ozekihiroshi/)

[Download](https://downloads.wordpress.org/plugin/ozeki-database-backup-for-s3.0.1.1.zip)

 * [Details](https://wordpress.org/plugins/ozeki-database-backup-for-s3/#description)
 * [Reviews](https://wordpress.org/plugins/ozeki-database-backup-for-s3/#reviews)
 *  [Installation](https://wordpress.org/plugins/ozeki-database-backup-for-s3/#installation)
 * [Development](https://wordpress.org/plugins/ozeki-database-backup-for-s3/#developers)

 [Support](https://wordpress.org/support/plugin/ozeki-database-backup-for-s3/)

## Description

Ozeki Database Backup for S3 is a security-focused WordPress database backup plugin
for Amazon S3.

The plugin is designed for environments where WordPress can obtain AWS credentials
through the AWS SDK for PHP default credential provider chain, such as an EC2 instance
using an IAM role.

The plugin does not provide fields for storing an AWS Access Key ID or Secret Access
Key in the WordPress database.

Current features include:

 * Manual database backups from WordPress administration.
 * Automatic daily database backups using WP-Cron.
 * WP-CLI database backup command.
 * WP-CLI backup status command.
 * Gzip-compressed SQL database backups.
 * Amazon S3 upload using the AWS SDK for PHP.
 * Native `mysqldump` or `mariadb-dump` when available.
 * PHP-based database dump fallback when native database dump utilities or process
   execution are unavailable.
 * Configurable retention using any positive integer keep count.
 * Backup history stored locally in WordPress.
 * S3 connection testing with temporary test objects.
 * Automatic cleanup of plugin Cron events when the plugin is deactivated.

#### AWS authentication

Ozeki Database Backup for S3 uses the AWS SDK for PHP default credential provider
chain.

The plugin does not ask you to enter an AWS Access Key ID or Secret Access Key in
the WordPress administration interface and does not intentionally store long-lived
AWS credentials in the WordPress database.

For WordPress hosted on Amazon EC2, using an IAM role attached to the EC2 instance
is recommended.

Other credential sources supported by the AWS SDK default credential provider chain
may also work, depending on the hosting environment.

The AWS identity used by WordPress must have appropriate permissions for the configured
S3 bucket and prefix.

#### Database backup

Database backups are created as SQL dumps, compressed with gzip, and uploaded to
the configured S3 bucket.

Backup objects are stored below:

    ```
    <configured-prefix>/backups/database/YYYY/MM/DD/
    ```

The plugin prefers a native MySQL-compatible dump utility such as `mysqldump` or`
mariadb-dump` when available.

When a suitable native dump utility or PHP process execution is unavailable, the
plugin can use its PHP database dump backend instead.

#### Automatic backups and WP-Cron

Automatic backups use WordPress WP-Cron.

WP-Cron is triggered by WordPress requests and is not a real-time operating system
scheduler. A backup scheduled for a particular time may therefore run later if the
site receives no requests around that time.

For environments where predictable execution is important, use an operating system
scheduler to run WordPress Cron periodically.

For a standard WP-CLI installation, an example is:

    ```
    */5 * * * * cd /path/to/wordpress && wp cron event run --due-now --quiet
    ```

For a Docker Compose installation with a WP-CLI service, an example is:

    ```
    */5 * * * * cd /path/to/docker-project && docker compose run --rm wp-cli cron event run --due-now --quiet
    ```

These are examples only. Paths, users, container configuration, and execution permissions
depend on your hosting environment.

#### Retention

Retention can be disabled or configured with any positive integer as the number 
of latest database backups to keep.

Retention operates only on database backup objects matching the plugin’s expected
backup naming structure below the configured S3 prefix.

Manual backups do not automatically apply retention.

Automatic backups and backups executed through the plugin’s WP-CLI backup command
apply the configured retention policy after a successful backup.

#### Uninstall behavior

Deactivating the plugin removes its scheduled WordPress Cron event but keeps plugin
settings and backup history.

Uninstalling the plugin removes its local WordPress settings and backup history.

Uninstalling Ozeki Database Backup for S3 does NOT delete database backups stored
in Amazon S3.

This is intentional. Remote backups should not disappear merely because the WordPress
plugin is removed.

### External Service

Ozeki Database Backup for S3 connects to Amazon Web Services (AWS), specifically
Amazon Simple Storage Service (Amazon S3), in order to store and manage database
backup objects.

The plugin uses the AWS SDK for PHP to communicate with AWS.

When the plugin performs a database backup, it sends the following to Amazon S3:

 * The configured S3 bucket name.
 * The configured S3 object prefix and generated backup object key.
 * The gzip-compressed SQL database backup file.

A database backup may contain any information stored in the WordPress database. 
Depending on the site, this may include personal or sensitive data such as user 
accounts, email addresses, post content, comments, plugin settings, and other database
records.

When the S3 connection test is run, the plugin:

 * Checks access to the configured bucket.
 * Creates a temporary test object containing a generated test string and timestamp.
 * Reads the temporary object back to verify access.
 * Deletes the temporary test object.

Retention operations may list and delete database backup objects within the configured
backup prefix according to the selected retention policy.

Use of Amazon S3 is subject to Amazon Web Services terms and privacy policies:

AWS Customer Agreement:
 https://aws.amazon.com/agreement/

AWS Privacy Notice:
 https://aws.amazon.com/privacy/

AWS Service Terms:
 https://aws.amazon.com/service-terms/

No telemetry, analytics, advertising, or unrelated tracking data is intentionally
sent by Ozeki Database Backup for S3 to the plugin author.

### WP-CLI

Create a database backup:

    ```
    wp ozeki-database-backup-for-s3 backup
    ```

Display backup configuration and status:

    ```
    wp ozeki-database-backup-for-s3 status
    ```

## Screenshots

[⌊Configure the AWS Region, S3 bucket and prefix, automatic backup schedule, and
retention count.⌉⌊Configure the AWS Region, S3 bucket and prefix, automatic backup
schedule, and retention count.⌉[

Configure the AWS Region, S3 bucket and prefix, automatic backup schedule, and retention
count.

[⌊Verify S3 object access and create an on-demand compressed database backup from
the WordPress administration screen.⌉⌊Verify S3 object access and create an on-demand
compressed database backup from the WordPress administration screen.⌉[

Verify S3 object access and create an on-demand compressed database backup from 
the WordPress administration screen.

## Installation

 1.  Install and activate Ozeki Database Backup for S3.
 2.  Make sure the WordPress server can obtain AWS credentials through the AWS SDK 
     default credential provider chain.
 3.  Grant the AWS identity access to the intended S3 bucket and prefix.
 4.  Open Settings > Ozeki Database Backup for S3.
 5.  Enter the AWS Region, S3 Bucket, and optional S3 Prefix.
 6.  Save the settings.
 7.  Use “Test Connection” to verify S3 read/write/delete access.
 8.  Use “Backup Now” to create the first database backup.
 9.  Optionally enable the daily automatic backup schedule and configure retention.

For Amazon EC2, an IAM role attached to the instance is recommended instead of storing
long-lived AWS access keys on the WordPress server.

## FAQ

### Does this plugin store my AWS Access Key ID or Secret Access Key?

The plugin does not provide settings fields for long-lived AWS Access Key IDs or
Secret Access Keys and does not intentionally store them in the WordPress database.

AWS authentication is handled through the AWS SDK for PHP default credential provider
chain.

### Is an EC2 IAM role required?

No.

An EC2 IAM role is the recommended authentication method when WordPress is hosted
on Amazon EC2, but other credential sources supported by the AWS SDK default credential
provider chain may also work.

### Are database backups encrypted?

The plugin uploads backups to Amazon S3 over the AWS SDK connection.

Encryption at rest depends on the configuration of the destination S3 bucket and
applicable AWS settings.

Administrators should configure the S3 bucket according to their own security and
compliance requirements.

### Does uninstalling the plugin delete my S3 backups?

No.

S3 database backup objects are intentionally preserved when the plugin is uninstalled.

### Does the automatic backup run at an exact time?

Not necessarily.

The automatic backup uses WP-Cron, which depends on WordPress requests to trigger
due events.

For more predictable execution, configure a real operating system scheduler to periodically
execute due WordPress Cron events.

### What happens if mysqldump is not available?

The plugin can fall back to a PHP-based database dump implementation when a supported
native dump utility or process execution is unavailable.

The PHP fallback opens a separate database connection using the database constants
already defined by WordPress. This keeps its consistent-snapshot transaction isolated
from WordPress’s shared database connection; it does not accept database connection
values from an HTTP request or plugin setting.

### What does the S3 connection test do?

It checks access to the configured S3 bucket, writes a temporary test object, reads
it back, verifies the contents, and then deletes it.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Ozeki Database Backup for S3” is open source software. The following people have
contributed to this plugin.

Contributors

 *   [ ozekihiroshi ](https://profiles.wordpress.org/ozekihiroshi/)

[Translate “Ozeki Database Backup for S3” into your language.](https://translate.wordpress.org/projects/wp-plugins/ozeki-database-backup-for-s3)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/ozeki-database-backup-for-s3/),
check out the [SVN repository](https://plugins.svn.wordpress.org/ozeki-database-backup-for-s3/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/ozeki-database-backup-for-s3/)
by [RSS](https://plugins.trac.wordpress.org/log/ozeki-database-backup-for-s3/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.1.1

 * Renamed the plugin to Ozeki Database Backup for S3.
 * Removed the fixed 7, 14, or 30 backup retention choices; any positive integer
   keep count is now supported.
 * Clarified the separate database connection used by the PHP dump fallback.
 * Fixed Daily Cron registration when settings are saved for the first time.

#### 0.1.0

 * Initial public release.
 * Added manual database backup to Amazon S3.
 * Added automatic daily database backups using WP-Cron.
 * Added configurable S3 backup retention.
 * Added WP-CLI backup and status commands.
 * Added native MySQL/MariaDB dump support with PHP fallback.
 * Added backup history.
 * Added plugin activation, deactivation, and uninstall lifecycle handling.
 * Added AWS default credential provider authentication.

## Meta

 *  Version **0.1.1**
 *  Last updated **23 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.9 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 8.1 or higher **
 * Tags
 * [amazon s3](https://wordpress.org/plugins/tags/amazon-s3/)[aws](https://wordpress.org/plugins/tags/aws/)
   [backup](https://wordpress.org/plugins/tags/backup/)[database backup](https://wordpress.org/plugins/tags/database-backup/)
   [security](https://wordpress.org/plugins/tags/security/)
 *  [Advanced View](https://wordpress.org/plugins/ozeki-database-backup-for-s3/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/ozeki-database-backup-for-s3/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/ozeki-database-backup-for-s3/reviews/)

## Contributors

 *   [ ozekihiroshi ](https://profiles.wordpress.org/ozekihiroshi/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/ozeki-database-backup-for-s3/)