Home  >  Article  >  Backend Development  >  How to do database backup using PHP

How to do database backup using PHP

PHPz
PHPzOriginal
2023-06-22 17:33:041503browse

How to use PHP for database backup

Nowadays, in the Internet era, data backup has become a necessity for enterprises and individuals. PHP script is a very convenient tool when performing MySQL database backup. Database backup using PHP allows you to save data backup in plain text format or compressed files. In this article, we will introduce how to use PHP for database backup.

  1. Connecting to MySQL database

Before performing database operations, we need to connect to the database. The following is a PHP script to connect to a MySQL database:

$host = 'localhost';
$user = 'root';
$password = '';
$database = 'mydatabase ';

$conn = new mysqli($host, $user, $password, $database);

if ($conn->connect_error) {

die("Connection failed: " . $conn->connect_error);

}

In the above code, we create an instance of the mysqli class and assign it to the variable $conn. If the connection fails, an error message will be output.

  1. Perform the backup operation

Next, we will use PHP to perform the backup operation. The following is a PHP script to back up a MySQL database:

$filename = 'mydatabase_backup_' . date('Y-m-d-H-i-s') . '.sql';

// MySQL dump command
$command = "mysqldump -h $host -u $user -p$password $database > backup/$filename";

// Run command
exec($command);

In the above code, we created a variable $filename to specify the name of the database backup file. Then, we use the mysqldump command to save the data backup to the specified file.

  1. Compress backup file

If we want to compress the backup file into ZIP format, we can use PHP's ZipArchive class. The following is a PHP script that compresses backup files into ZIP format:

$zipname = 'mydatabase_backup_' . date('Y-m-d-H-i-s') . '.zip';

// Create new zip archive
$zip = new ZipArchive;

if ($zip->open('backup/' . $zipname, ZipArchive::CREATE) === TRUE) {

// Add backup file to archive
$zip->addFile('backup/' . $filename, $filename);

// Close archive
$zip->close();

}

// Delete backup file
unlink('backup/' . $filename);

In the above code, we create a ZIP archive using the ZipArchive class file and add the backup file to the compressed file. Once the backup file is compressed, we can delete it to free up disk space.

Conclusion

The above is a brief introduction to using PHP for database backup. When our data backup needs to be automated, we can use Cron jobs or Windows scheduled tasks to execute backup tasks regularly. At the same time, we can also upload backup files to cloud storage to ensure data security. No matter how we operate, data backup is very important, so we should choose the most appropriate way to handle data backup.

The above is the detailed content of How to do database backup using PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn