MySQL mysqldump 数据备份

专栏持续更新中:MySQL详解

部署在后台服务器或者云端的MySQL大部分做了一些限制,在本地无法直连后台服务的数据库3306端口上,一般有防火墙之类的网络中间件

在远程服务器一般不能使用GUI图形化界面工具进行数据备份,所以我们一般都是通过命令mysqldump进行

导出建库建表的SQL:

bash 复制代码
mysqldump -u 用户名 -p111111 --all-databases > ~/all.sql          # 导出所有的库
mysqldump -u 用户名 -p111111 --databases school > ~/school.sql    # 导出school库
mysqldump -u 用户名 -p111111 --databases db1 db2 db3 > ~/dbs.sql    # 导出多个库
mysqldump -u 用户名 -p111111 school stu > ~/stu.sql               # 导出school库下的stu表

导出纯数据:

bash 复制代码
mysql -u 用户名 -p111111 -D school -e 'select * from user where age>10' > ~/user.txt

在mysql终端执行source命令,导入数据,建库建表:

shell 复制代码
mysql> source ~/school.sql

在linux shell下执行以下命令,即可把mytest库的user表的数据导出到.sql文件中(导出的不仅是数据,SQL语句也导出了)

user.sql文件内容如下:

现在user.sql是root的文件,我们变更一下属主,使得普通用户也可以操作

我们现在把mytest库下的user表删除

然后我们source,相当于把.sql脚本重新执行一遍

user表和数据全部恢复出来了,有了.sql的脚本,可以在任意的mysql库上去重建库表及数据

我们还可以直接导出纯表数据

bash 复制代码
mysql -u root -p -D school -e 'select * from user where age>10' > ~/user.txt

user.txt内容如下:

相关推荐
咕噜企业分发小米几秒前
阿里云与华为云基因测序数据同步的日志内容中,哪些字段对于故障排查最为关键?
数据库·阿里云·华为云
阿杰 AJie1 分钟前
MyBatis-Plus 比较运算符
java·数据库·mybatis
码农幻想梦1 分钟前
实验六 AOP,JdbcTemplate及声明式事务
java·开发语言·数据库
砚边数影2 分钟前
金仓数据库KDMS助力某能源集团完成20TB时序数据智能迁移,效率提升显著、年省运维成本超千万元
运维·数据库·能源·时序数据库·数据库平替用金仓·金仓数据库·kdms
XXOOXRT3 分钟前
基于SpringBoot的用户登录
java·spring boot·后端
齐 飞4 分钟前
springboot整合shardingsphere-jdbc5.1.1-按月分表
数据库·spring boot
努力也学不会java12 分钟前
【Spring Cloud】环境和工程基本搭建
java·人工智能·后端·spring·spring cloud·容器
源代码•宸16 分钟前
Golang原理剖析(interface)
服务器·开发语言·后端·golang·interface·type·itab
burning_maple26 分钟前
设计数据密集型应用阅读笔记
分布式·后端·中间件
勇气要爆发28 分钟前
向量数据库 Milvus 极速入门:从 Docker 部署到 Python 增删改查实战
数据库·docker·milvus