📜  mysql dump 数据库命令行 linux - SQL (1)

📅  最后修改于: 2023-12-03 15:03:04.679000             🧑  作者: Mango

MySQL Dump 数据库命令行 Linux - SQL

简介

MySQL是一种关系型数据库管理系统,是最流行的开源关系型数据库之一。MySQL提供了一种名为mysqldump的工具,可用于从MySQL数据库中进行备份和恢复。mysqldump是一个命令行工具,可用于将数据库数据和结构以可读格式导出到文件中。本文将介绍如何使用mysqldump进行数据库备份和恢复。

安装MySQL

在Linux上,可以使用apt-get或yum等包管理器来安装MySQL服务。以下是在Ubuntu系统上安装MySQL服务器的命令:

sudo apt-get update
sudo apt-get install mysql-server

安装过程中会提示您设置MySQL的root用户密码。在该过程结束后,您可以测试MySQL服务是否正在运行:

sudo service mysql status

如果MySQL服务器正在运行,则应显示类似于以下内容:

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-10-20 14:04:22 UTC; 4min 48s ago
 Main PID: 5859 (mysqld)
    Tasks: 28 (limit: 1131)
   Memory: 313.3M
   CGroup: /system.slice/mysql.service
           └─5859 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 20 14:04:20 ubuntu-16 systemd[1]: Starting MySQL Community Server...
Oct 20 14:04:22 ubuntu-16 systemd[1]: Started MySQL Community Server.
备份MySQL数据库

使用mysqldump备份MySQL数据库非常简单。以下是一个基本的备份命令,将数据库数据和结构导出到一个文件中:

mysqldump -u USERNAME -p DATABASENAME > backup.sql

其中,USERNAME是具有备份权限的MySQL用户的用户名,DATABASENAME是要备份的数据库名,backup.sql是要生成的备份文件名。在执行上述命令后,mysqldump将要求您输入用户名的密码。在成功输入密码后,备份文件backup.sql将包含整个数据库结构和数据。

此外,还可以使用以下命令将备份压缩为gzip格式:

mysqldump -u USERNAME -p DATABASENAME | gzip > backup.sql.gz

此命令将在将备份数据导出到标准输出之前,将其压缩为gzip格式。gzip格式的备份比未压缩的备份更小,因此,对于大型数据库,建议使用该命令。

恢复MySQL数据库

使用mysqldump备份文件恢复MySQL数据库也非常简单。以下是从备份文件中恢复数据的基本命令:

mysql -u USERNAME -p DATABASENAME < backup.sql

其中,USERNAME是具有恢复权限的MySQL用户的用户名,DATABASENAME是要恢复的数据库名,backup.sql是要用于恢复的备份文件名。在执行上述命令后,mysql将要求您输入用户名的密码。在成功输入密码后,备份文件backup.sql中包含的数据库将在运行中创建和填充。

如果备份文件是gzip格式,请使用以下命令进行恢复:

gunzip < backup.sql.gz | mysql -u USERNAME -p DATABASENAME

此命令将使用gunzip将备份文件解压缩到标准输出中,然后将其导入到MySQL数据库中。

总结

通过mysqldump和mysql,在Linux上备份和恢复MySQL数据库非常简单。备份MySQL数据库使用mysqldump命令,并使用gzip命令进行压缩。恢复MySQL数据库使用mysql命令,可以从备份文件或gzip压缩的备份文件中恢复数据。注意,MySQL备份文件可能很大,因此建议使用gzip进行备份。