在Ubuntu系统中,使用PHP实现数据备份与恢复可以通过多种方式来完成。以下是一个基本的指南,介绍如何使用PHP脚本来备份和恢复MySQL数据库。
创建备份脚本
创建一个名为 backup_db.php
的文件,并添加以下内容:
<?php
// 数据库配置
$host = 'localhost';
$user = 'your_username';
$password = 'your_password';
$database = 'your_database';
$backup_file = 'backup-' . date('Y-m-d_H-i-s') . '.sql';
// 连接到数据库
$conn = new mysqli($host, $user, $password, $database);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 执行备份命令
$sql = "mysqldump -u $user -p$password $database > $backup_file";
if (system($sql)) {
echo "备份成功: $backup_file";
} else {
echo "备份失败";
}
$conn->close();
?>
请将 your_username
、your_password
和 your_database
替换为实际的数据库用户名、密码和数据库名称。
运行备份脚本
在终端中运行以下命令来执行备份脚本:
php backup_db.php
这将生成一个包含数据库备份的SQL文件。
创建恢复脚本
创建一个名为 restore_db.php
的文件,并添加以下内容:
<?php
// 数据库配置
$host = 'localhost';
$user = 'your_username';
$password = 'your_password';
$database = 'your_database';
$backup_file = 'path/to/your/backup.sql';
// 连接到数据库
$conn = new mysqli($host, $user, $password, $database);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 读取备份文件并执行恢复命令
$sql = "mysql -u $user -p$password $database < $backup_file";
if (system($sql)) {
echo "恢复成功";
} else {
echo "恢复失败";
}
$conn->close();
?>
请将 your_username
、your_password
、your_database
和 path/to/your/backup.sql
替换为实际的数据库用户名、密码、数据库名称和备份文件的路径。
运行恢复脚本
在终端中运行以下命令来执行恢复脚本:
php restore_db.php
这将使用指定的备份文件恢复数据库。
通过以上步骤,你可以在Ubuntu系统中使用PHP脚本来实现MySQL数据库的备份与恢复。