网站首页 > 技术文章 正文
Oracle数据库的备份与恢复是数据库管理中至关重要的操作,可以用来保证数据的安全性和完整性。在Oracle中,备份分为逻辑备份和物理备份,其中物理备份又分为热备份和冷备份。在我的工作中经常需要进行数据备份,我们的项目生产环境的备份有异地灾备,本地定时备份,本地实时备份。
Oracle数据库备份分为逻辑备份和物理备份,根据数据库的工作模式分为非归档模式和归档模式,一般我们把非归档模式称为冷备份,而相应的把归档模式称为热备份。下面以逻辑备份和物理备份为例,今天给大家分享一下,基本的逻辑备份。
逻辑备份
逻辑备份是对数据库中的逻辑结构,例如表、视图、存储过程等进行备份。逻辑备份的优点是备份速度快,缺点是恢复时间长。常用的逻辑备份方式有数据泵(Data Pump)和EXP/IMP。
1.使用数据泵进行备份和恢复:
- 数据库导出:
expdp system/password directory=data_pump_dir
dumpfile=my_backup.dmp logfile=my_backup.log schemas=scott
- 数据库导入:
impdp system/password directory=data_pump_dir dumpfile=my_backup.dmp
logfile=my_backup.log schemas=scott
2.使用 EXP/IMP 进行备份和恢复:
- 数据库导出:
exp system/password file=my_backup.dmp owner=scott
- 数据库导入:
imp system/password file=my_backup.dmp fromuser=scott touser=scott
索引
由于我们的表是分区表,我们数据备份删除后,表中所有索引失效,需要我们进行索引的重建,
查询表中索引:
SELECT * FROM USER_INDEXES WHERE TABLE_NAME = 'person';
查询索引表空间:
SELECT i.index_name, t.table_name, t.tablespace_name, sum(i.bytes) / 1024 / 1024 as size_mb
FROM user_indexes i
JOIN user_tables t ON i.table_name = t.table_name
GROUP BY i.index_name, t.table_name, t.tablespace_name;
创建索引:
创建一个名为 "index_name" 的简单索引,以 person 表中的 name 列作为索引列:
CREATE INDEX index_name ON person (name);
在创建索引时指定使用的表空间的示例:
CREATE INDEX index_name ON table_name(column_name) TABLESPACE tablespace_name;
创建新的表空间:
CREATE TABLESPACE tablespace_name
DATAFILE 'file_location/file_1.dbf'
SIZE [size]
AUTOEXTEND ON NEXT [next_size]
MAXSIZE [max_size];
表空间添加其他数据文件
ALTER TABLESPACE tablespace_name ADD
DATAFILE 'file_location/file_2.dbf' SIZE [size]
AUTOEXTEND ON NEXT [next_size] MAXSIZE [max_size];
整理不易,欢迎大家点赞收藏,转发,关注我每天分享一点运维小知识。
猜你喜欢
- 2025-07-21 Navicat实现 MYSQL数据库备份图文教程
- 2025-07-21 RMAN备份监控及优化总结(rman备份是物理备份么)
- 2025-07-21 五个在线备份解决方案及优势分析(在线备份软件)
- 2025-07-21 备份基础知识:文件、数据库和操作系统的保护
- 2025-07-21 一文掌握怎么利用Shell+Python实现多数据源的异地备份程序
- 2024-10-25 Windows 操作系统利用数据泵备份与恢复Oracle数据库
- 2024-10-25 小实验彻底搞清楚oracle控制及参数文件何时会自动备份
- 2024-10-25 系统方案合集-任务计划批处理文件备份数据库
- 2024-10-25 oracle备份批处理文件,保存最近一周文件
- 2024-10-25 Oracle Rman 备份实操讲解 oracle rman备份原理
你 发表评论:
欢迎- 625℃几个Oracle空值处理函数 oracle处理null值的函数
- 618℃Oracle分析函数之Lag和Lead()使用
- 607℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 602℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 599℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 591℃【数据统计分析】详解Oracle分组函数之CUBE
- 581℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 566℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- oracle 19cOCM认证有哪些内容(oracle认证ocm月薪)
- Oracle新出AI课程认证,转型要持续学习
- oracle 表的查询join顺序,可能会影响查询效率
- Oracle DatabaseAmazon Web Services正式可用,Oracle数据库上云更容易了
- Oracle 19.28 RU 升级最佳实践指南
- 汉得信息:发布EBS系统安装启用JWS的高效解决方案
- 如何主导设计一个亿级高并发系统架构-数据存储架构(三)
- Java 后端开发必看!工厂设计模式轻松拿捏
- ORA-00600 「25027」 「x」报错(抱错孩子电视剧 爸爸是武术 另一个爸爸是画家)
- 新项目终于用上了jdk24(jdk新建项目)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)