目录
oracle实例创建成功后,就可以愉快的增加用户、导入数据了。增加oracle实例可移步:传送门
创建表空间
CREATE TABLESPACE data
DATAFILE '/data/oracle/oradata/vcenter/DATA.DBF'
SIZE 200M
AUTOEXTEND ON NEXT 20M
MAXSIZE UNLIMITED;
创建用户
这里是将用户添加到默认表空间tbs_1:
create user test
identified by test
default tablespace tbs_1
temporary tablespace temp;
分配用户权限
grant dba to test;
导入数据
1)、创建目录
Grant read,write on directory data_test_dest to test;
2)、为oracle用户授予访问数据目录的权限,输入命令:
create or replace directory data_test_dest as '/data/testdata';
3)、导入导出操作授权,输入命令:
grant exp_full_database,imp_full_database to test;
4)、导入
impdp test/test@vcenter directory=data_test_dest file=test.dmp logfile=test.log
导入可能遇到的问题
ORA-39171: Job is experiencing a resumable wait.
ORA-01658: unable to create INITIAL extent for segment in tablespace tbs_1
处理步骤:
1)、同时按下 CTRL+C 停止当前任务;
2)、Import> stop_job=immediate
Are you sure you wish to stop this job ([yes]/no): yes
3)、表空间扩容
sqlplus>select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name;
sqlplus>alter database datafile '/data/oracle/oradata/vcenter/tbs_1.dbf' resize 20480M;
表空间扩容时,可能会遇到ORA-01144问题:
问题描述:每个数据库最多有1024-2=1022个文件(2个文件预留),每个文件最多有4M个块,如果用默认的oracle block,即8192byte,那么,每个datafile最大为:4M×8K=32GB;
解决方案:
1、扩容时表空间大小不能超过32G;如果表空间已经快到32G还想再扩容,就只能创建新的datafile,容量也不能超过32G。
2、在数据库库设计时,如果数据容量很大,在oracle 10g版本以后可以创建bigfile tablespace,datafile最大容量为32T。
问题描述:如果小于32G,依然失败,考虑是你的内存空间不足;
解决方案:重新执行扩容语句,将容量调整为合适的大小
4)、查询用户的任务名称和任务状态:sqlplus>SELECT * FROM DBA_DATAPUMP_JOBS;
5)、继续执行任务,找到对应用户任务名称类似于‘SYS_IMPORT_FULL_*’的任务名称:
$impdp test/test attach=SYS_IMPORT_FULL_01
6)、Import> start_job
7)、重复执行步骤4,可以看到任务已经开始执行,等待执行完毕即可。
至此导入成功。