expdpimpdp数据库备份和恢复操作步骤

mac2022-06-30  83

准备工作:1.服务器的ip,计算机名,使用的数据库账号2.查看数据库所有表空间及表空间的大小。 --估计所需要的物理内存select tablespace_name sum(bytes)/1024/1024/1024 as GB from dba_data_files group by tablespace_name;3.数据库名,实例名。show parameter name;4.是否开启归档。archive log list;5.使用的字符集select userenv('language') from dual;

导出操作: --创建数据库备份文件物理存放路径 'G:\db_back' --创建逻辑路径 create directory db_back as 'G:\db_back'; --验证是否创建成功 select * from dba_directories; --为用户赋予指定目录的操作权限 grant read,write on directory db_back to 用户名

expdp system/AWNU19940228ygah@orcl directory=db_back dumpfile=fulldata20181217.dmp full=y logfile=export.log

导入操作:还原数据库准备工作1.删除表空间和用户 导入前删除原来的表空间和用户,如果没有则忽略 drop tablespace 表空间名 including contents and datafiles; drop user 用户名 cascade; -删除用户以及用户下的所有表和视图

2.创建表空间和用户 create tablespace dsa datafile 'd:/dsa.dbf' size 50m autoextend on [NEXT 10M MAXSIZE 4096M]; 注:单引号中的文件名和表空间名相同 create user 用户名 identified by 密码 default tablespace 表空间 temprorary tablespace 临时表空间名;

3.给用户授权 grant dba to 用户名还原操作 1.使用system登录数据库 sqlplus system/密码@orcl 2.创建逻辑目录,物理目录并把备份文件放入物理目录中 create or replace directory recover as 'd:/fds'; 3.给用户授权 grant read,write on directory db_back recover to 用户名 4.导入备份文件 impdp 用户名/密码@orcl directory=recover dumpfile=fulldata20181217.dmp logfile=impdp.log

--查询所有表的所有数据量 select table_name,num_rows from user_tables where table_name in(select table_name from user_tables);

转载于:https://www.cnblogs.com/AWNUygah/p/10566409.html

最新回复(0)