- oracle 查询表空间占用情况
SELECT a.tablespace_name "表空间名称",
total / (1024 * 1024) "表空间大小(M)",
free / (1024 * 1024) "表空间剩余大小(M)",
(total - free) / (1024 * 1024 ) "表空间使用大小(M)",
total / (1024 * 1024 * 1024) "表空间大小(G)",
free / (1024 * 1024 * 1024) "表空间剩余大小(G)",
(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)",
round((total - free) / total, 4) * 100 "使用率 %"
FROM (SELECT tablespace_name, SUM(bytes) free
FROM dba_free_space
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) total
FROM dba_data_files
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name;
2.创建用户并赋予默认表空间,赋予 dba 权限
create user rh_prod identified by rh_prod default tablespace RH_PROD;
grant connect,resource,dba to rh_prod;
3.删除用户
drop user rh_prod cascade;
4.创建表空间
create tablespace "RH_PROD" datafile 'D:\app\Administrator\oradata\orcl\RH_PROD_1.DBF' size 500M autoextend on;
5.修改表空间,增加数据文件,在数据块为 8k 的情况下,单个数据文件的最大容量为 8K*2^22 = 32G
alter tablespace "RH_PROD" add datafile 'D:\app\Administrator\oradata\orcl\RH_PROD_2.DBF' size 500M autoextend on;
6.查询用户下对 session 会话
select username,sid,serial#,paddr from v$session where username='RH_UAT';
alter system kill session '634,7';--杀死
7.重新配置监听命令
netca
8.创建 dblink
create public database link mylink connect to rh_prod identified by rh_prod using 'PROD';
--PROD需要去tns配置
drop public database link mylink;--删除
select * from dual@mylink;--测试是否有效
9.dblink + expdp 导出数据
create directory MY_DIR as 'd:\dump';--创建目录
grant write,read on directory MY_DIR to rh_prod;--授权
select * from dba_directories;--查看是否创建
expdp rh_prod/rh_prod@orcl network_link=mylink schemas=rh_prod dumpfile=expdp.dmp parallel=4 DIRECTORY=MY_DIR logfile=result.log--导出
10.impdp 导入数据
impdp rh_prod/rh_prod@orcl DIRECTORY=MY_DIR DUMPFILE=expdp.dmp SCHEMAS=rh_prod logfile=impdp.log
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于