Oracle-SQL语句中级

锁表查询
SELECT a.sid, a.serial#, c.object_name, b.session_id, b.oracle_username,b.os_user_name
FROM v p r o c e s s p , v process p, v processp,vsession a, v$locked_object b, all_objects c
WHERE p.addr = a.paddr
AND a.process = b.process
AND c.object_id = b.object_id
删除锁表
alter system kill session ‘SID,SERIAL#’ immediate ;
alter system kill session ‘4003,2611’ immediate ;

in和exists
数据少的时候 in快 多的时候 exists 快
select count(1) from attributeinstance where processinstanceid in
(select lcslid from expense where DJZT = ‘7’ and DQCLHJ = ‘稽核’);

select a.* from attributeinstance a where exists
(select 1 from expense b where DJZT = ‘7’ and DQCLHJ = ‘稽核’
and a.processinstanceid = b.lcslid);

创建用户之前要创建"临时表空间",若不创建则默认的临时表空间为temp。

CREATE TEMPORARY TABLESPACE TRAFFIC_TEMP
TEMPFILE ‘/home/oracle/tablespace/TRAFFIC_TEMP.DBF’
SIZE 32M
AUTOEXTEND ON
NEXT 32M MASIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
创建用户之前先要创建数据表空间,若没有创建则默认永久性表空间是system。

CREATE TABLESPACE TRAFFIC
LOGGING
DATAFILE ‘/home/oracle/tablespace/TRAFFIC.DBF’
SIZE 32M
AUTOEXTEND ON
NEXT 32M MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;

查看表空间总大小:
select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;

查看表空间已使用大小及分配情况

select SEGMENT_TYPE,owner,sum(bytes)/1024/1024 from dba_segments where tablespace_name=‘XITONG’ group by segment_type,owner;

查看表空间文件路径
select * from dba_data_files;

增加表空间大小

可以选择增加新的数据文件:

alter tablespace name add datafile 'F:\SOFT-INSTALL-SOFT\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\HOUTAI1.ORA ’ size 100M;

扩充表空间原有数据文件的大小
ALTER DATABASE DATAFILE ‘F:\SOFT-INSTALL-SOFT\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\HOUTAI.ORA’ RESIZE 1024M;

ALTER TABLESPACE SDE AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;

允许已存在的数据文件自动增长
ALTER DATABASE DATAFILE ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF’
AUTOEXTEND ON NEXT 100M MAXSIZE 20480M;

Oracle单个数据文件超过32G后扩容

表空间数据文件容量与DB_BLOCK_SIZE的设置有关,而这个参数在创建数据库实例的时候就已经指定。DB_BLOCK_SIZE参数可以设置为4K、8K、16K、32K、64K等几种,Oracle的物理文件最大只允许4194304个数据块(这个参数具体由操作系统决定,一般应该是此数字),表空间数据文件的最大值对应关系就可以通过4194304×DB_BLOCK_SIZE/1024M计算得出。
4k最大表空间为:16384M
8K最大表空间为:32768M
16k最大表空间为:65536M
32K最大表空间为:131072M
64k最大表空间为:262144M
而Oracle默认分配的为8K,也就是对应于32768M左右的空间大小,如果想继续增大表空间的话,只需要通过alter tablespace name add datafile ‘path/file_name’ size 1024M;添加数据文件的方式就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值