文章目录
- 前言
- 一、目的
-
二、步骤
- 1.创建表空间
- 2.创建用户
- 3.授权
- 4.创建目录
- 5.导入
- 总结
前言
仅记录ORACLE数据库导入过程和示例,以供参考。
提示:以下是本篇文章正文内容,下面案例可供参考
一、目的
在开发和测试环境,经常需要导入模拟数据或者生产环境拿到的数据,本文的目的就是对导入数据的过程进行一个示例说明。以下sql中用户名密码及目录等需替换使用。
二、步骤
1.创建表空间
(1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)
(2)以sysdba方式来打开sqlplus: sqlplus "/as sysdba"
(3)查看我们常规将用户表空间放置位置sql:select name from v$datafile
(4)创建用户表空间:
SQL示例如下:
CREATE TABLESPACE TEST_USER DATAFILE '/home/oracle/app/oradata/orcl/test_user.dbf' SIZE 1024M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; 表空间不足时,修改表空间:
修改表空间: alter tablespace TEST_USER add datafile '/home/oracle/app/oradata/orcl/TEST_USER03.dbf' size 1024M autoextend on;
(5)创建临时表空间
create temporary tablespace kc_temp tempfile '/home/oracle/app/oradata/orcl/test_user.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local;
2.创建用户
示例如下:
-
create user TESTER IDENTIFIED BY 1
-
default tablespace EFMDW
-
temporary tablespace TEMP
-
profile DEFAULT;
3.给用户授权
根据需要的权限给用户赋权。
示例如下:
-
grant connect to TESTER;
-
grant dba to TESTER;
-
grant resource to TESTER;
-
grant create any view to TESTER with admin option;
-
grant unlimited tablespace to TESTER;
4.创建目录
建目录之前必须要先建相应的系统目录,并赋权给orale用户:chown -R oracle:oinstall dump_dir;
查看所有目录:select * from dba_directories;
示例如下:
create or replace directory XXX_dir as '/diskTest/dump_dir';
5.导入
导入可分为完全导入full参数为y,部分导入;
示例如下:
impdp xxx_dps/1234@orcl directory=xxx_dir dumpfile=xxx_dps_20190318.dmp full=y access_method=direct_path table_exists_action=replace TRANSFORM=segment_attributes:n;
不同用户表空间导入:
示例如下:
impdp xxx_dps1/1@orcl DIRECTORY=xxx_dir DUMPFILE= remap_schema=xxx:xxx_dps1 remap_tablespace=xxx:XXXDPS1;
imp导入:
imp导入没有覆盖参数,需要删除用户,重建用户赋权实现覆盖
imp xxx_dw/1234 file= log= full=y;
总结
主要是记录oracle数据导入过程和示例,以上。
另外,如果遇到数据库无法登录可尝试以下命令:
ps -ef|grep "oracleXXXX (LOCAL=NO)"|grep -v grep|awk '{print $2}'|xargs kill -9