MySQL四种备份表的方式
·
好久没有发布文章啦,直接上内容!
一、将表备份到物理机
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;
分享完毕!
更多推荐
已为社区贡献3条内容
所有评论(0)