前言
最近接触到一个项目,类似于搭建一个全新的环境吧。
因为是SpringBoot工程(是一个文件夹拷贝过去修改配置就能启动),所以就只涉及到Oracle和Redis环境的搭建和复制了。
搭建环境遇到的坑比较少,主要的时间大部分花在了数据库的复制粘贴上面。
正文
需求分析
要求:把A库数据以及数据结构用户名、表空间、索引空间原封不动转到B库。
一般来说DBA不完全了解业务,不能判断每一张表的作用,应该没有遗漏地无区分拷贝结构和数据。
这个行为的专业术语叫做:数据库的备份与恢复
几种数据库恢复
其实查找资料我们不难发现Oracle已经给我们提供了好几套解决方案:
1.依赖sql-developer(开发者工具)的数据库复制功能。
2.物理备份
3.逻辑备份
在此期间我们会接触到一些基础知识:
1.数据库文件分为:重做日志文件 、归档日志文件---开启影响性能
2.表空间和用户的关系
3.数据库权限(DBA、RESOURCE、CONNECT)是什么以及他们如何被分配
物理备份
物理备份说人话就是复制粘贴,因此这是需要操作系统账号的。其又分为:
1.热备份(归档模式、联机备份)
备份:把数据库置为归档模式(需要关闭数据库服务)
备份表空间
恢复:对当前日志进行归档
切换日志
关闭数据
删除数据文件并重启..............(太多了不说了自己看吧)
2.冷备份(不用归档模式、脱机备份)
备份:关闭