Good morning, And in case I don't see you, good afternoon, good evening, and good night!
早上好!假如再也见不到你, 那就再祝你下午好,晚上好,晚安喽!
阿里云-RDS数据备份本地恢复技术点
1.先在rds备份中,将数据dump下来数据
2.tar包下载下来后解压,解压后找到对应库中的对应 table.ibd 文件copy出来备用
3.数据库中创建一个自己的库。同时将要恢复的表接口添加上
注意点:在新建的数据库中运行建表语句:
需要在建表语句后加上: ROW_FORMAT=COMPACT
ROW_FORMAT=COMPACT用于行格式保 持在索引节点中存储整行的效率 具体详情可见下面 保持行格式解析
1>. 创建mzd库名 需要在自己安装的mysql目录下可见
注意点:
此处的data目录需要通过授权才可见 单独 sudo 指令无效 下方有指令的学习
sudo chmod -R a+rwx /usr/local/mysql-5.7.22-macos10.13-x86_64/data/
linux中 chmod指令介绍及使用:chmod 解析
# 将目录以及目录下的文件都设置为所有用户拥有读写权限。
# 注意,使用'-R'选项一定要保留当前用户的执行和读取权限,否则会报错!
chmod -R a=rw ./testdir/
1.此时可以看得到我们创建的mzd库 然后通过执行创建语句会生成对应frm表结构 以及ibd数据
2.ALTER TABLE pg_norm_evaluation_record DISCARD TABLESPACE;解除表空间,ls查看会发现.idb文件已经被删除
3.将下载的备份文件复制进mzd 库内
cp /mzd/table.ibd ./
此处ls -l目录查看会发现 复制进去的.ibd文件不属于mysql
需要执行命令:
通过chown改变文件的拥有者和群组。在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员
sudo chown mysql:mysql xxx.ibd
ls -l 执行后看到.ibd文件属于mysql则成功
4.最后执行命令:alter table xxx import tablespace;
将ibd数据导入
CREATE TABLE `pg_norm_evaluation_record` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`score_scheme_id` bigint(20) DEFAULT NULL COMMENT '评分方案id',
`score_evaluation` float DEFAULT NULL COMMENT '评分评价',
`describe_evaluation` varchar(500) DEFAULT NULL COMMENT '描述评价',
`deleted` tinyint(4) DEFAULT NULL COMMENT '逻辑删除标识(0未删除 1已删除)',
`remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`modify_time` datetime DEFAULT NULL COMMENT '修改时间',
PRIMARY KEY (`id`),
KEY `idx_plan` (`score_scheme_id`,`deleted`)
) ENGINE=InnoDB AUTO_INCREMENT=20768 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT;
ALTER TABLE pg_norm_evaluation_record DISCARD TABLESPACE;
alter table pg_norm_evaluation_record import tablespace;
SELECT * FROM `pg_norm_evaluation_record` WHERE `courses_evaluation_id` = 11216;
评论补充 🍉