MySQL命令

1. 查看最大连接数:

show variables like 'max_connections';

mysql> show status like 'Threads%';  
    +-------------------+-------+  
    | Variable_name     | Value |  
    +-------------------+-------+  
    | Threads_cached    | 58    |  
    | Threads_connected | 57    |   ###这个数值指的是打开的连接数  
    | Threads_created   | 3676  |  
    | Threads_running   | 4     |   ###这个数值指的是激活的连接数,这个数值一般远低于connected数值  
    +-------------------+-------+  
       
    Threads_connected 跟show processlist结果相同,表示当前连接数。准确的来说,Threads_running是代表当前并发数  
       
    这是是查询数据库当前设置的最大连接数  
    mysql> show variables like '%max_connections%';  
    +-----------------+-------+  
    | Variable_name   | Value |  
    +-----------------+-------+  
    | max_connections | 100  |  
    +-----------------+-------+  
       
    可以在/etc/my.cnf里面设置数据库的最大连接数  
    max_connections = 1000

 

SHOW PROCESSLIST;  
SHOW FULL PROCESSLIST;  
SHOW VARIABLES LIKE '%max_connections%';  
SHOW STATUS LIKE '%Connection%'; 

 

 

2. 查看当前连接的用户:

show processlist;

 show processlist; 可以显示前100条连接信息 show full processlist; 可以显示全部。随便说下,如果用普通账号登录,就只显示这用户的。注意命令后有分号。

 

3. 查看当前库下面的表中字段的相关信息:

SELECT *
FROM
`information_schema`.`COLUMNS` where `TABLE_SCHEMA`='c' and `TABLE_NAME`='prd_product_main' order by `ORDINAL_POSITION`;

注意:此处的全是ESC按键下面的反引号键。

表中字段的基本信息全在里面,加上适当的条件查询,就可以达到我们想要的目的了。

 

5. 查询所有的表

select * FROM `information_schema`.`TABLES` WHERE
`TABLES`.`TABLE_TYPE` = 'base table';

 

6. 查看执行计划是否开启

show variables like '%profil%';

开启执行计划: set profiling=1;

 

7. 通过执行计划分析 SQL

explain xxSQL;

参数详情参考:http://www.cnblogs.com/xu-xiang/p/5833349.html

 

8. 查看当前MySQL支持的存储引擎详情

show engins;

 

9. 查看MySQL 的事务隔离级别

select @@tx_isolation

 

10. 查询表锁并杀死线程
show processlist;
kill thread_id;
SELECT concat('KILL ',id,';') FROM information_schema.processlist WHERE .......;

 

11. 查看表的信息

desc xxxtable;
show create table xxxtable;

posted on 2015-05-26 10:37  快鸟  阅读(476)  评论(0编辑  收藏  举报