当前位置:首页 » 操作系统 » 状态数据库表

状态数据库表

发布时间: 2024-10-20 11:21:31

A. 怎么知道数据库表已经锁表了

可直接在mysql命令行执行:show engine innodb statusG;

查看造成死锁的sql语句,分析索引情况,然后优化sql然后show processlist;

show status like ‘%lock%’

show OPEN TABLES where In_use > 0; 这个语句记录当前锁表状态

另外可以打开慢查询日志,linux下打开需在my.cnf的[mysqld]里面加上以下内容:

slow_query_log=TRUE(有些mysql版本是ON)

slow_query_log_file=/usr/local/mysql/slow_query_log.txt

long_query_time=3

select *from v$locked_object:可以获得被锁的对象的object_id及产生锁的会话sid。通过查询结果中的object_id,可以查询到具体被锁的对象。

(1)状态数据库表扩展阅读:

注意事项

也可以直接把这几个视图和表关联起来,在查询结果中直接得到“alter system kill session 'sid, serial#'”这样的方便的kill sessoin命令。

如果执行kill session命令后,锁并没有除掉,session依然存在。这种情况,通过select spid from v$process where addr in(select paddr from v$session where sid = &sid)查询到oracle会话在服务器上的pid,然后登陆到服务器上,执行kill -9 pid这样就能杀掉进程解锁了。

B. 查询mysql 哪些表正在被锁状态

可直接在mysql命令行执行:show engine innodb statusG;

查看造成死锁的sql语句,分析索引情况,然后优化sql然后show processlist;

show status like ‘%lock%’

show OPEN TABLES where In_use > 0; 这个语句记录当前锁表状态

另外可以打开慢查询日志,linux下打开需在my.cnf的[mysqld]里面加上以下内容:

slow_query_log=TRUE(有些mysql版本是ON)

slow_query_log_file=/usr/local/mysql/slow_query_log.txt

long_query_time=3

(2)状态数据库表扩展阅读:

MySQL锁定状态查看命令

Checking table:正在检查数据表(这是自动的)。

Closing tables:正在将表中修改的数据刷新到磁盘中,同时正在关闭已经用完的表。这是一个很快的操作,如果不是这样的话,就应该确认磁盘空间是否已经满了或者磁盘是否正处于重负中。

Connect Out:复制从服务器正在连接主服务器。

Copying to tmp table on disk:由于临时结果集大于tmp_table_size,正在将临时表从内存存储转为磁盘存储以此节省内存。

Creating tmp table:正在创建临时表以存放部分查询结果。

deleting from main table:服务器正在执行多表删除中的第一部分,刚删除第一个表。

热点内容
android设置边框圆角 发布:2025-09-12 02:34:51 浏览:715
安卓手机清理怎么操作 发布:2025-09-12 02:33:36 浏览:77
android屏幕居中 发布:2025-09-12 02:33:33 浏览:467
linux网络编程教程 发布:2025-09-12 02:31:27 浏览:836
褶子算法 发布:2025-09-12 02:29:44 浏览:998
活塞压缩机原理 发布:2025-09-12 02:18:59 浏览:94
新疆dns服务器地址 发布:2025-09-12 02:18:58 浏览:706
文件夹嗅探 发布:2025-09-12 02:00:02 浏览:329
html5开发源码 发布:2025-09-12 01:46:40 浏览:321
python中list函数 发布:2025-09-12 01:41:09 浏览:545