Oracle用户数据导出导入&表空间扩容

本文档详细介绍了如何在Oracle数据库中进行用户数据的导出导入,包括创建用户、授权、使用exp和imp工具迁移数据。同时,针对表空间扩容问题,分别展示了smallfile和bigfile表空间的扩容步骤,以及如何开启自动扩展功能。
摘要由CSDN通过智能技术生成

Oracle导出导入用户数据

1、创建用户zhl并授权

create bigfile tablespace zhl datafile '+DATA' size 100G;
create temporary tablespace zhltmp tempfile '+DATA' size 10G;
create user zhl identified by Oracle123 default tablespace zhl temporary tablespace zhltmp;
grant connect,resource,dba to zhl;

2、用测试工具创建zhl用户对象数据
3、使用oracle用户进入/u01/app/oracle/product/19.0.0/db_1/bin目录,导出zhl数据

./exp zhl/Oracle123@oracledb file=zhl.dmp

在这里插入图片描述

4、创建用户zhl2并授权,表空间和临时表空间均为之前的,也可以重新建,这个无所谓

create user zhl identified by Oracle123 default tablespace zhl temporary tablespace zhltmp;
grant connect,resource,dba to zhl2;

5、使用oracle用户进入/u01/app/oracle/product/19.0.0/db_1/bin目录,将zhl数据导入给zhl2

./imp zhl/Oracle123@oracledb file=zhl.dmp fromuser=zhl touser=zhl2

在这里插入图片描述
6、完成,zhl2的数据结构和zhl相同

#通过命令可以查看用户表结构
select * from all_tables a where a.OWNER = upper('zhl');
select * from all_tables a where a.OWNER = upper('zhl2');

表空间扩容

默认创建的表空间大小限制是32G,如果表空间满了不能直接resize

1、smallfile表空间

system等oracle系统表空间满了,则可以用这种方式进行扩容
1.1、创建默认表空间

create tablespace zhltest1 datafile '+DATA' size 30G;

在这里插入图片描述

(默认表空间大小限制为32G,如果超过,会提示错误)在这里插入图片描述
1.2、查看表空间datafile空闲容量

select file_name,user_bytes / 1024 / 1024 / 1024 as "Free(G)" from dba_data_files where tablespace_name='ZHLTEST1';

在这里插入图片描述
如果此时去进行resize扩容,则会提示错误,因为表空间大小被限制了,所有不能直接resize
在这里插入图片描述
1.3、向表空间中新增datafile

alter tablespace zhltest1 add datafile '+DATA' size 30g;

在这里插入图片描述
1.4、完成后,再次查看表空间zhltest1的文件就有2个了,表空间也进行了扩容
在这里插入图片描述

2、bigfile表空间

2.1、创建bigfile表空间

create bigfile tablespace zhltest datafile '+DATA' size 35G;

在这里插入图片描述
2.2、查看表空间的datafile
(表空间名需要大写,oracle存的数据均为大写)

select file_name from dba_data_files where tablespace_name='ZHLTEST';

在这里插入图片描述
2.3、查看表空间大小

select bytes / 1024 / 1024 / 1024 as "Size(G)" from dba_data_files where tablespace_name='ZHLTEST';

在这里插入图片描述
2.4、resize表空间大小

alter database datafile '+DATA/ORACLEDB/DATAFILE/zhltest.285.1057419625' resize 50g;

2.5、查看扩大后的表空间大小
在这里插入图片描述
others
自动扩展表空间,不支持smalfile表空间,因为只有32g,没有比要,当创建的bigfile表空间,可以自动扩展,也就是自动向ASM磁盘组里面增加容量
1、查看表空间对应的datafile是否开启了autoextensible自动扩展

select file_name,autoextensible from dba_data_files where tablespace_name='ZHLTEST1';

在这里插入图片描述
2、开启自动扩展,并设置每次扩展100M,最大200G
需要注意的是maxsize最好小于ASM磁盘组空间的大小

alter tablespace ZHLTEST autoextend on next 100M maxsize 200g;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值