使用imp导入备份数据到oracle 12 c 的操作

-- 1.首先完成cdb中的全部操作:
-- 查看指定用户是否存在,若存在,将其删除;
-- 其次查看指定的默认和临时表空间是否存在,若存在,将其删除;
-- 最后创建默认和临时表空间。

-- 1.1 查看指定用户是否存在,如果存在,则删除该用户
select username 
from dba_users
where username like '_#%';

--删除指定用户,此时的用户有很多表,需要级联删除(使用cascade)关键字
drop user C##FACTORY cascade;

-- 1.2 查看指定的默认表空间是否存在,如存在,则删除该表空间
select d.tablespace_name
from dba_tablespaces t , dba_data_files d
where t.tablespace_name=d.tablespace_name and t.tablespace_name like 'FACTORY%';

--删除默认表空间和数据文件
alter tablespace factory_data offline;
drop tablespace factory_data including contents and datafiles; -- 删除默认表空间,因为此时表空间是有数据的,需要including contents

-- 1.3 查看指定的临时表空间是否存在,如存在,则删除该表空间
select t.tablespace_name
from dba_temp_free_space t 
where t.tablespace_name like 'FACTORY%';

--删除临时表空间和数据文件
drop tablespace factory_temp including contents and datafiles; -- 删除默认表空间,因为此时表空间是有数据的,需要including contents

-- 1.4 创建默认表空间 
create tablespace factory_data
logging
datafile 'F:\Oracle\tablespaces\FACTORY_DATA\cdb_factory_data.dbf' size 2048m
autoextend on next 20m
extent management local;

--创建临时表空间
create temporary tablespace factory_temp
tempfile 'F:\Oracle\tablespaces\FACTORY_DATA\cdb_factory_temp.dbf' size 2048m
autoextend on next 20m
extent management local;

-- 2.其次完成pdb中的全部操作

-- 2.1 将数据库切换为pdb,然后创建与cdb同样的用户、
alter session set container = orclpdb;

-- 2.2 打开数据库
alter database orclpdb open;

-- 2.3 查看指定默认表空间是否存在,如存在,将其删除
select t.tablespace_name
from dba_tablespaces t,dba_data_files d
where t.tablespace_name=d.tablespace_name and  t.tablespace_name like 'FACTORY%';

-- 删除默认表空间和数据文件
alter tablespace factory_data offline;
drop tablespace FACTORY_DATA including contents and datafiles;

-- 2.4 查看指定的临时表空间是否存在,如存在,将其删除
select t.tablespace_name
from dba_tablespaces t,dba_temp_free_space d
where t.tablespace_name=d.tablespace_name and t.tablespace_name like 'FACTORY%';

-- 删除临时表空间和数据文件
drop tablespace FACTORY_TEMP including contents and datafiles;

-- 2.5 创建默认表空间 
create tablespace factory_data
logging
datafile 'F:\Oracle\tablespaces\FACTORY_DATA\pdb_factory_data.dbf' size 2048m
autoextend on next 20m
extent management local;

-- 2.6 创建临时表空间
create temporary tablespace factory_temp
tempfile 'F:\Oracle\tablespaces\FACTORY_DATA\pdb_factory_temp.dbf' size 2048m
autoextend on next 20m
extent management local;

-- 2.7 查看容器名称
show con_name;

-- 3.最后将数据库切换会cdb后创建用户,指定用户表空间,指定用户权限‘
alter session set container =cdb$root;

-- 3.1 开始创建用户
create user c##factory identified by factory;
alter user c##factory default tablespace factory_data; --指定默认表空间
alter user c##factory temporary tablespace factory_temp; --指定临时表空间
grant connect,dba to c##factory; --授予用户权限

conn c##factory/factory

--4.使用imp导入备份数据到数据库中:

imp 用户名/密码@主机ip地址/数据库实例名  file=数据库备份文件的完整路径(如:d:\databack\backup.dmp) full=y ignore=y

耐心等待数据导完。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值