帮助中心

立即注册 咨询客服

当前位置:首页 > 帮助中心> 如何在Ubuntu 20.04上使用mysqldump创建MySQL数据库备份?

如何在Ubuntu 20.04上使用mysqldump创建MySQL数据库备份?

发布时间:2020年07月18日 10:35:02    来源: A5互联

在本文中,我们将向介绍如何在Ubuntu 20.04服务器上创建MySQL数据库的备份,以及如何创建整个/var/lib/mysql目录的备份。

我们将使用MySQL的命令mysqldump创建数据库备份。然后,我们将演示如何对MySQL所在的/var/lib/mysql目录执行备份。对数据库和数据库服务器执行定期备份对于保护服务器上的数据至关重要。这样,如果你的Ubuntu 20.04服务器出了什么问题,或者MySQL因为某些原因(不兼容或其他原因)中断了,你就有了一个安全的备份,你可以恢复它,防止你宝贵的数据丢失。

一旦你创建了MySQL数据库的备份,并将其保存在你的服务器上或远程位置上,那么以后如果需要的话,你可以随时从这个备份中恢复数据库。创建MySQL数据库的备份对于任何网站所有者来说都是必不可少的,而且应该定期进行。只要按照本教程中的简单步骤进行操作,你的数据就会在短时间内变得冗余。让我们开始吧。

首先,我们假设您具有对服务器的SSH访问权限。

通过SSH登录到服务器:

ssh root@server_ip -p port_number

如果需要,可以用管理员帐户的用户名替换root(默认情况下,我们的服务器都有root访问权限)。然后将server_ip替换为服务器的IP地址,将port_number替换为SSH端口,默认值为22。

第一步. 更新操作系统软件包

让我们确保你的操作系统是最新的:

apt-get update

第二步:安装MySQL数据库服务器。安装MySQL数据库服务器

MySQL是一个流行的数据库管理系统,它可以轻松地安装在任何Linux服务器上。由于它的流行,几乎所有现代Linux发行版上都有MySQL的软件包。当前MySQL的最新版本是8.0版本,但在本文写完后可能存在一个更新的版本。

要安装MySQL服务,请运行以下命令:

apt install mysql-server

为了验证MySQL是否已经安装,以及检查MySQL服务的状态,我们可以使用以下命令:

qpkg -l | grep -imysql

systemctl status mysql

您将看到类似如下的输出:

我们来介绍一下MySQL服务的管理。用下面的命令启用MySQL服务在服务器启动时启动:

systemctl enable mysql

对于启动和停止MySQL服务,我们可以分别使用以下命令:

systemctl start mysql

systemctl stop mysql

为了检查安装的MySQL版本,执行以下命令:

mysql -V

输出应该类似于这样:

mysql  Ver 8.0.20-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

为了提高MySQL服务器的安全性,最好运行mysql_secure_installation脚本,输入以下命令。它可以让你进行一些额外的配置,比如设置root密码、删除示例数据库等:

mysql_secure_installation

第三步: 创建一个MySQL数据库

在这一步中,我们将创建一个MySQL数据库、MySQL用户和新用户的密码,以及我们测试数据库所需的权限。稍后我们将对新创建的数据库进行转储。

用以下命令登录到你的MySQL控制台:

mysql -u root -p

输入密码:(如果你在mysql_secure_installation过程中设置了MySQL根密码,请输入它。如果你没有设置,请留空)

登录后,逐一执行以下命令:

mysql> CREATE DATABASE testDB;

mysql> CREATE USER 'admin_user'@'localhost' IDENTIFIED BY 'StrongPassword';

mysql> GRANT ALL PRIVILEGES ON testDB.* TO 'admin_user'@'localhost';

mysql> FLUSH PRIVILEGES;

mysql> exit;

不要忘记将 "StrongPassword "替换为自己生成的强密码。

一旦创建了MySQL数据库,我们就可以在MySQL控制台内使用以下命令列出所有的MySQL数据库:

show databases;

输出应该是这样的:

第四步:使用'mysqldump'创建备份。使用'mysqldump'创建一个备份。

这是主要步骤,我们将使用mysqldump命令行工具创建MySQL数据库的备份。

在你选择的目录中输入你要保存备份的地方。

在本教程中,我们将使用/backup目录:

cd /backup

执行以下命令,创建我们之前创建的测试数据库的数据库转储:

mysqldump -u admin_user -p testDB > backup.sql

输入你设置的"admin_user "密码,并列出/backup目录下的文件,确保数据库备份创建成功:

ls -al | grep backup

输出应该是这样的:

-rw-r--r--  1 root root 1267 Jun  7 09:52 backup.sql

如果你想创建服务器上所有数据库的数据库转储,使用MySQL根用户凭证使用以下命令:

mysqldump --all-databases -u root -p > AllDatabaseBackup.sql

输入MySQL根密码,再次检查备份是否成功,运行以下命令:

ls -al | grep All

输出应该是这样的:

-rw-r--r--  1 root root 1036456 Jun  7 10:15 AllDatabaseBackup.sql

第五步:复制MySQL数据库目录

这一步是可选的。如果你想把MySQL数据库所在的整个目录连同其数据一起复制,首先要用下面的命令停止MySQL服务。

systemctl stop mysql

用这个命令验证MySQL服务是否已经停止:

systemctl status mysql

输出应该是这样的:

完成后,我们就可以用rsync命令复制MySQL数据库目录了:

rsync -Waq --numeric-ids /var/lib/mysql/ /backup/mysql.raw/

检查/backup/mysql.raw目录,并列出里面的文件和目录,确保/var/lib/mysql目录的备份成功:

cd /backup/mysql.raw

ls -alh

在创建了原始备份后,我们可以使用以下命令启动MySQL服务:

systemctl start mysql

至此,您已经成功使用 "mysqldump "命令行工具创建了备份。你已经成功使用 "mysqldump "命令行工具创建了一个备份,并在Ubuntu 20.04 VPS上使用rsync创建了MySQL数据库的原始备份,现在你可以安全地存储和保护你的数据了。