一,
1.Oracle 创建表空间,用户,赋值(简装)
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL> conn /as sysdba
2.删除用户
drop user username cascade;
3.创建自增表表空间
SQL> create tablespace 表空间 datafile ‘E:\oracle\product\10.2.0\oradata\表空间.dbf‘ size 50m autoextend on;
4.创建用户
create user username identified by password default tablespace 表空间;
5.赋值
grant dba to username;
exit
6.导入数据库
在本地导入数据库
C:\>imp 用户名/用户密码@实例名 file=G:\oracle\oracle.bak full=y
7.导入数据库
导出非本地数据库
C:\>exp rows=y owner=用户名 file="E:\289\库名_201107.dmp" log="e:\289\库名_201107.log"
额外操作
增加表空间
SQL> alter tablespace sjpt resize 500m;
ORA-32773: 不支持对小文件表空间 SJPT 的操作
如果报以上错误则换为:
SQL> alter tablespace sjpt add datafile ‘d:\oradata\sjpt1.dbf‘ size 500m reuse autoextend on next 100m;
二,
http://jun0325.javaeye.com/blog/603783
2.1.查看所有表空间大小:
select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;
2.2.已经使用的表空间大小:
select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name;
2.3. 所以使用空间可以这样计算:
select a.tablespace_name,total,free,total-free used from
( select tablespace_name,sum(bytes)/1024/1024 total from dba_data_files
group by tablespace_name) a,
( select tablespace_name,sum(bytes)/1024/1024 free from dba_free_space
group by tablespace_name) b
where a.tablespace_name=b.tablespace_name;
最近一直在导入Oracle的很多备份到新的服务器上的新的Oracle上,但是导入新服务器的Oracle上后,发现使用的仍然是之前默认使用的USERS表空间,并非使用我自行创建的表空间,于是从网上索罗了很多修改表空间的方法终于搞定了。
主要用到了下面几个sql:
(1) 查询占用该表空间的表: select segment_name,bytes/1024/1024 from dba_segments where tablespace_name=‘ts_name‘ and segment_type=‘TABLE‘;
(2) 修改表所使用的表空间: alter table buffalo_wf_processinstance move tablespace "ts_name";
(3) 修改带有大字段表的表空间: alter table tb_name(表名) move tablespace tbs_name(表空间名) lob(col_lob1(字段名),col_lob2) store as(tablesapce tbs_name);
(4) 对于有索引的表重建索引: alter index PK_T_CMS_CATALOG(索引名) rebuild; 不知道各位高手在遇到这种情况的时候是如何修改它的表空间?
三,
3.1
查看表空间是否为自增??
---如果有多个数据文件,则单个显示分开显示、
select TABLESPACE_NAME, AUTOEXTENSIBLE from dba_data_files;
----表空间没有自增属性,而表空间中的数据文件是可以自增的,所以间接达到表空间自增
select distinct TABLESPACE_NAME, AUTOEXTENSIBLE from dba_data_files;
3.2
查看数据文件,有时会有多个,而且不在同一目录,所以需要用到
select * from dba_data_files;
2011-01-06