我的oracle积累
#记录我的oracle使用方法和功能语句
oracle使用语句
一,创建数据表空间,创建用户名,给用户赋权限,导入数据,导出数据库。
- 创建表空间 ,create tablespace NEWSPACE datafile ‘/userdata/app/Administrators/oradata/ORCL/newspace.dbf’ size 5000M Autoextend on Next 5000M Maxsize unlimited; --创建新表空间,创建一个newspace空间,空间大小为5000M,并且自动增长,空间最大为Max;
- 创建用户名 create user USER1 identified by USER1 default tablespace NEWSPACE;给NEWSPACE创建USER1密码为USER1;
- 给用户赋权限 grant connect,resource,dba to USER1; --表示把 connect,resource权限授予USER1用户;
- 导出数据库 cmd命令 exp USER1/USER1@orcl file=d:\bak\orcl.dmp log=d:\bak\orcl.log —导出整个数据库 exp system/manager@myoracle file=d:\daochu.dmp tables=(table1) —导出单个表数据结构及数据 system是用户名,manager 是密码,myoracle 是数据库名;
- 导入数据库 cmd命令 imp USER1/USER1@orcl file=d:\bak\orcl.dmp log=d:\bak\orcl.log fromuser=USER1 touser=USER1 ignore=y —导入整个数据库;
cmd命令 drop table table1; imp USER1/USER1@orcl file=d:\bak\orcl.dmp tables=(table1) —导入单个表
二,查询所有表空间及文件所放位置,查找表对应的表空间,查找表占用空间大小,允许已存在的数据文件自动增长。
-
查询所有表空间及文件所放位置
select
b.file_name 物理文件名,
b.tablespace_name 表空间,
b.bytes/1024/1024 大小M,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024 已使用M,
substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) 利用率
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_name,b.bytes
order by b.tablespace_name -
查找表对应的表空间
select TABLE_NAME,TABLESPACE_NAME from dba_tables where TABLESPACE_NAME in (‘USERS’,‘NEWSPACE’)
group by TABLESPACE_NAME,TABLE_NAME -
查找表占用空间大小
select segment_name, bytes
from user_segments
where segment_type = ‘TABLE’
order by bytes desc -
允许已存在的数据文件自动增长
ALTER DATABASE DATAFILE ‘D:\APP\ADMINISTRATOR\ORADATA\LMIS_JS\ORDER01.DBF’
AUTOEXTEND ON NEXT 5M MAXSIZE 100M;