一、导出整个数据库
mysqldump -u username -p database_name > backup.sql
如果你不想显示密码,可以忽略 -p。执行该命令时,系统会提示输入密码。
可以使用以下命令导入这个 SQL 文件:
mysql -u username -p database_name < backup.sql
如果你不想显示密码,可以忽略 -p。执行该命令时,系统会提示输入密码。
你也可以仅导出表结构或者数据。命令如下:
二、仅导出表结构
mysqldump -u username -p --no-data database_name > backup.sql
当你只想备份表结构时,可以加上 --no-data 选项。该选项告诉 mysqldump 不要导出数据,只导出表结构。
三、仅导出数据
mysqldump -u username -p --no-create-info database_name > backup.sql
当你只想备份数据时,可以加上 --no-create-info 选项。该选项告诉 mysqldump 不要导出表结构,只导出数据。
四、导出多个表
mysqldump -u username -p database_name table1 table2 table3 > backup.sql
当你只想备份某些表时,可以在命令行使用表名分别列出需要备份的表。请注意,这些表名必须空格分隔,并被尖括号括起来(>),以便将命令执行结果输出到文件。
五、导出特定的数据
如果你需要备份表中特定的数据,可以使用 WHERE 子句来完成该任务。
mysqldump -u username -p database_name table_name --where="column_name=value" > backup.sql
当你需要备份符合特定条件的行时,WHERE 子句就能够派上用场了。定义一个条件,比如 WHERE name='Tom',就能够导出所有 name 列名为 Tom 的行。在 --where 参数中包含完整的 WHERE 子句即可。
六、修改默认备份名称
mysqldump -u username -p database_name > new_name.sql
默认情况下,备份文件的名称是以数据库名称加上时间戳组成的。但如果你想要对文件进行命名,可以更改该名称。在命令中,你可以为输出文件指定任意的名称。在该示例中,new_name.sql 就指定为新的备份文件名称。