1.读取服务器变量:
    show [global|session] variables;
2.更改非静态(只读)变量:
    set [global|session] <variable_name> = <value>;
3.读取状态变量:
    show status;
    show session status;
    show global status;
4.显示给定数据库的表的详情
    show table [from <db>] status;
5.显示所有已知插件的名称和当前状态
    show plugins;
6.显示系统上运行的所有线程(包括连接),默认显示当前用户的进程,full显示所有进程
    show [full] processlist
7.显示指定表的索引基数统计信息
    show index from <table>;
8.筛选结果
    show session status like '%log%';
9.显示指定存储引擎的日志信息、状态信息
    show engine <engine_name> logs
    show engine <engine_name> status
10.显示MYSQL发行版的所有可用存储引擎的列表及其状态
    show engines;
11.显示被记录到二进制日志的事件
    show binlog events [in '<log_file>'] [from <pos>] [limit [<offset>,] <row count>]
12.显示服务器上的二进制列表
    show binary logs
13.显示master 的当前配置
    show master status
14.show slave hosts
15.show slave status
16.重整Query Cache
    flush query cache

17.迭代执行表达式10000遍所花费的时间
    select benchmark(10000,"select * from t_account");
18.
    [explain |describe] [partitions select * from ...]
19.优化数据库表
    analyze table:检测和重组表的关键字分布情况
    optimize table:恢复被删除的块和重组表,从而提高性能,可在MyISAM、BDB、InnoDB
    repair table:为MyISAM、Archive和CVS存储引擎恢复崩溃的表。
用于恢复那些崩溃的或允许很慢的表

20.按索引顺序存储表,对范围查询效率有提高(如 16>a>5)
    myisamchk -R 2 /usr/local/mysql/data/test/table1
21.KeyCache (B-树存储关键字),仅用于MyISAM。
   每次查询MyISAM数据表时都会检查一遍Key Cache,若在缓存中找到索引,则直接在内存中执行索引检索,
   而不是先从磁盘上读取索引。(MyISAM比其他存储引擎查询快的原因)

22.提高缓存命中率的方法:
    a.预加载缓存
    b.使用多个Key Cache 分配更多的内存
23.预加载Key Cache
    load index into cache table1 ignore leaves;只装载索引的非叶子节点
24.使用多个Key Cache
    a.使用二级主缓存
        set global emp_cache.key_buffer_size = 128*1024;
        cache index table1 in emp_cache;
        set global emp_cache.key_buffer_size = 0;//只有将大小置为0或重新启动服务器时,才存在二级Key Cache

b.查看二级缓存是否存在或其大小
        select @@global.emp_cache.key_buffer_size;
17.mysqladmin
    mysqladmin -uroot --password processlist --sleep 3
18.MySQL GUI工具
    MySQL Administrator 1.2
    MySQL Query Browser 1.2
    MySQL Migration Toolkit 1.1

05-26 15:20