备份 Ubuntu 上的 MariaDB 数据库可以通过多种方法实现,其中最常用且推荐的方法是使用 mysqldump
工具。以下是详细的步骤指南:
mysqldump
工具备份登录到 MariaDB 服务器 打开终端并使用 MariaDB 客户端登录到你的数据库服务器:
mysql -u root -p
输入你的密码后,你将进入 MariaDB 命令行界面。
创建备份文件
使用 mysqldump
命令来备份数据库。以下是一个基本的命令示例:
mysqldump -u root -p --all-databases > /path/to/backup/all-databases.sql
这个命令会备份所有数据库,并将备份文件保存到指定的路径 /path/to/backup/all-databases.sql
。你需要将 /path/to/backup/
替换为你希望保存备份文件的实际路径。
如果你只想备份特定的数据库,可以使用 --databases
选项:
mysqldump -u root -p --databases database_name > /path/to/backup/database_name.sql
将 database_name
替换为你想要备份的数据库名称。
压缩备份文件(可选) 为了节省存储空间,你可以压缩备份文件:
gzip /path/to/backup/all-databases.sql
这将生成一个压缩文件 all-databases.sql.gz
。
mysqlpump
工具备份mysqlpump
是 MariaDB 提供的一个并行备份工具,适用于大型数据库。使用方法与 mysqldump
类似:
mysqlpump -u root -p --all-databases > /path/to/backup/all-databases.sql
tar
打包整个数据目录(不推荐)虽然可以使用 tar
打包整个数据目录来备份数据库,但这种方法不推荐,因为它可能会导致数据不一致。如果你确实需要这样做,请确保在备份期间没有数据库写入操作。
sudo tar -czvf /path/to/backup/mysql-backup.tar.gz /var/lib/mysql
恢复备份的过程相对简单。以下是使用 mysql
客户端恢复备份的基本步骤:
登录到 MariaDB 服务器
mysql -u root -p
恢复备份文件
使用 mysql
命令来恢复数据库:
mysql -u root -p < /path/to/backup/all-databases.sql
如果你使用的是压缩文件,可以先解压缩再恢复:
gunzip /path/to/backup/all-databases.sql.gz
mysql -u root -p < all-databases.sql
为了确保定期备份,你可以将备份命令添加到 cron 作业中。编辑 crontab 文件:
crontab -e
添加一行来设置定期备份任务,例如每天凌晨 2 点备份所有数据库:
0 2 * * * mysqldump -u root -p --all-databases > /path/to/backup/all-databases-$(date +\%F).sql
保存并退出编辑器。
通过以上步骤,你可以有效地备份和恢复 Ubuntu 上的 MariaDB 数据库。