分析当前用户下所有表的记录总数 保证好用! 代码如下: begin dbms_utility.analyze_schema(user,’COMPUTE’); end; select t.table_name,t.num_rows,t.blocks,t.empty_blocks from user_tables t
您可能感兴趣的文章:shell脚本操作oracle删除表空间、创建表空间、删除用户杀掉oracle在线用户脚本分享[Oracle]
锁定数据库的一个表
代码如下:
SELECT * FROM table WITH (HOLDLOCK)
注意: 锁定数据库的一个表的区别
代码如下:
SELECT * FROM table WITH (HOLDLOCK)
其他事务可以读取表,但不能更新删除
代码如下:
SELECT * FROM table WITH (TABLOCKX)
其他事务不能读取表,更新和删除
SELECT 语句中“加锁选项”的功能说明
SQL Server提供了强大而完备的锁机制来帮助实现数据库系统的并
1、查看被锁的表
select b.owner,b.object_name,a.session_id,a.locked_mode
from v$locked_object a,dba_objects b
where b.object_id = a.object_id;
2、查看那个用户那个进程照成死锁
select b.username, b.sid, b.serial#, b.logon_time, o.OBJECT_NAME
from v$locked_object a, v$sessi
1、 查看当前被解锁的对象 示例: 将表aa加锁 执行 select * from aa for update; 方式一:通过SQL查询 select ‘alter system kill session ‘,””||trim(t2.sid)||’,’||trim(t2.serial#)||”’;’ from v$locked_object t1,v$session t2 where t1.session_id=t2.sid order by t2.logon_time; 执行结果 方式二:在
1、查询进程
show processlist
2、 查询到相对应的进程,然后 kill id
验证(kill后再看是否还有锁)
2、查询是否锁表
show OPEN TABLES where In_use > 0;
示例:
新建一个会话执行如下的显示锁示例
LOCK TABLES account_data.account READ;
SELECT SLEEP(160);
UNLOCK TABLES account_data.account;
另开启一个会话检查锁表情况:
my