oracle数据库导入dmp文件
从线上正式环境导出的 dmp 文件,导入到本地 oracle 数据库。
1. 创建用户
create user hf_chip identified by hf_chip;
2. 授予 connect 和 resource 基本权限给新用户
grant connect, resource to hf_chip;
3. 创建表空间
create tablespace topprod datafile '/home/oracle/datafile/hf_chip/hf_chip_datafile.dbf' size 500m autoextend on;
这里 topprod 是新表空间的名称,datafile.dbf 是数据文件的路径和名称,500m是初始大小,autoextend on表示数据文件可以自动扩展。
4. 将表空间和用户关联
grant unlimited tablespace to hf_chip;
5. 用户注册
alter system register;
只有用户注册之后,才能用这个用户去导入,注册成功之后启动监听.
另起一个窗口:
cd /db/app/oracle/product/11.2.0/db_1/bin/
查看监听状态:
lsnrctl status
打开监听状态:
lsnrctl start
正确的情况,如下图:
status ready 是正确状态, unknow是错误状态.
然后执行导入,另起一个窗口,用 oracle 用户,执行:
imp system/oracle@127.0.0.1:1521/orcl file=/u6/back_hf_chip_20240606topprod.dmp tablespaces=topprod log=/u6/log/imp_topprod.log full=y ignore=y indexes=n
注意:
- 我这里给了 /u6 文件夹和 /u6/log/ 都是 chmod 777 后的。
- 否则会报错。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论