oracle数据备份和导入

一、数据导出

创建目录对象:

CREATE DIRECTORY dpump_dir AS '/path/to/your/directory';

授予权限:

GRANT READ, WRITE ON DIRECTORY dpump_dir TO  test_user; #导出的用户

导出全库数据

expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=full_export.dmp LOGFILE=full_export.log FULL=y

导出指定用户数据

expdp your_user/your_password  DIRECTORY=dpump_dir DUMPFILE=user_export.dmp LOGFILE=user_export.log SCHEMAS=your_schema

导出特定表

expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=table_export.dmp LOGFILE=table_export.log TABLES=your_schema.your_table

二、数据导入

导入全库数据

步骤:

创建目录对象(如上步骤)。

授予权限(如上步骤)。

执行全库导入:

impdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=full_export.dmp LOGFILE=full_import.log FULL=y
  1. 导入指定用户数据
    步骤:

创建目录对象(如上步骤)。

授予权限(如上步骤)。

执行指定用户数据导入:

impdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=user_export.dmp LOGFILE=user_import.log SCHEMAS=your_schema
  1. 导入指定表
    步骤:

创建目录对象(如上步骤)。

授予权限(如上步骤)。

执行指定表导入:

impdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=table_export.dmp LOGFILE=table_import.log TABLES=your_schema.your_table

三、其他重要选项

压缩导出文件(例如使用 gzip):

expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=full_export.dmp LOGFILE=full_export.log FULL=y COMPRESSION=ALL

只导出数据而不导出表结构:

expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=data_only_export.dmp LOGFILE=data_only_export.log TABLES=your_schema.your_table CONTENT=DATA_ONLY

六、监控和日志

查看导出和导入的日志文件,可以帮助你排查问题:

tail -f /path/to/your/directory/full_export.log
tail -f /path/to/your/directory/full_import.log

imp username/password@database file=dump_file.dmp full=y ignore=y

ignore=y #导入的时候忽略报错

相关推荐
爱吃牛肉的大老虎22 分钟前
Oracle架构之表空间详解
数据库·oracle·架构
什么鬼昵称40 分钟前
Pikachu-Sql Inject-搜索型注入
数据库·sql
bo_bo0011 小时前
MongoDB的使用
数据库·mongodb
KYumii1 小时前
MySQL-索引
数据库·mysql
techdashen1 小时前
AI不可尽信
数据库
‍。。。1 小时前
Ubuntu 系统崩了,如何把数据拷下来
数据库·ubuntu·php
无妄啊______2 小时前
mysql笔记10(高级部分--跟数据库管理有关)
数据库·笔记·mysql
周周写不完的代码5 小时前
Redis-持久化机制
数据库·redis·缓存
战神刘玉栋5 小时前
《程序猿之Redis缓存实战 · Redis 与数据库一致性》
数据库·redis·缓存