MySQL四种备份表的方式

本文介绍了如何使用mysqldump备份MySQL表到物理机、数据库内以及优化历史表性能的方法,包括创建复制表、使用`CREATETABLEAS`备份,以及通过热备技术处理历史表数据增长问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

好久没有发布文章啦,直接上内容!

一、将表备份到物理机

mysqldump -h 域名 -P 端口 -u用户 -p密码   库名  表名 > /路径/表名.{$date}.bak

二、将表备份在库里面(create复制表结构、insert复制表内容)

create table one_bak like one;  //复制表结构
insert into one_bak select * from one; //复制表内容

 三、将表备份在库里面(create table as备份)

注:与2步骤备份在库里面不同的是 as 备份表不会备份主键和外键,只备份表数据

create table one_bak as select * from one;

 四、大家都知道日志文件,具有“只追加写不修改”的属性,历史表和日志文件差不多,也具有这个属性。
同时和日志文件一样,历史表也具有“顺序读”和“随机读”的特点,所以有时历史表会加一些索引。

随着时间的推移,历史表数据会越来越多,使其“追加写”的性能越来越差,可以使用历史表热备的方法。

1.按照原历史表新增一个新表(空表)

mysql> show create table history_log\G
mysql> create table history_log_new ...;

2.给历史表重命名,并将新表重命名为历史表

mysql> RENAME TABLE history_log to history_log_bak_20230717, history_log_new to history_log;

分享完毕!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小格子衬衫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值