Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > mysqldump实现数据库表备份

使用mysqldump如何实现数据库表备份

作者:WalkerShen

这篇文章主要介绍了使用mysqldump如何实现数据库表备份方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

简介

mysqldump 是 MySQL 自带的逻辑备份工具。

它的备份原理是通过协议连接到 MySQL 数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert 语句,当我们需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。

备份命令

命令格式

mysqldump [选项] 数据库名 [表名] > 脚本名 

mysqldump [选项] --数据库名 [选项 表名] > 脚本名 

mysqldump [选项] --all-databases [选项]  > 脚本名 

windows操作案例

1、进入mysql bin目录

使用cmd,命令行指令,切换到对应的mysql的bin目录下,注意不要使用powershell,否则文件恢复的时候会出现问题

image.png

2、执行

这里可以自己先随便创建一个数据库和一个表,如果我便建了一个sys库,和一个sys_config表


image.png

复制数据库

PS D:\enviroment\mysql-8.0.23-winx64\bin> mysqldump -u root -p sys > d:\sys.sql

image.png

复制表

PS D:\enviroment\mysql-8.0.23-winx64\bin> mysqldump -u root -p sys sys_config > d:\sys_config.sql
Enter password: ******

3、恢复表

PS D:\enviroment\mysql-8.0.23-winx64\bin> mysql -u root -p
Enter password: ******

使用对应的数据库

mysql> use sys
Database changed

执行备份文件

mysql> source d:\sys_config.sql

image.png

查看数据库 就发现导入成功了 问题

1、ERROR:
ASCII ‘\0’ appeared in the statement,
but this is not allowed unless option
–binary-mode is enabled and mysql is run in non-interactive mode.
Set --binary-mode to 1 if ASCII ‘\0’ is expected. Query: ‘ÿþ-’.
Bye

image.png

总结

不要使用powershell导出

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文