mysql基础

1.表名重命名:

rename tables push_online to push_online_1;


2.在使用OR子句时,sql语句数不走索引的,如下:

select * from file where rating = 'R' or rating = 'NC-17';

优化方法:

select * from file where rating = 'R' union select * from file where rating = 'NC-17';


3.mysql常用命令:

show  [ global | session ] variables;

show status;

show session status;

show global status;      --显示全集变量

show index from table_name;   

show plugins;

show [full] processlist;

show engine innodb status;       --

show binlog events [ in '<log_file>' ] [ from <pos> ] [ limit [<offset>,] <row count>]

show relaylog events [ in '<log_file>' ] [ from <pos> ] [ limit [<offset>,] <row count> ]

show slave hosts    --显示slave的数量


4.OPTIMIZE TABLE:重建一个或多个表的数据结构。

用途:被频繁更新或删除的表会变的支离破碎,会出现不同程度的闲置空间或不理想的存储结构,导致表的性能下降,特别适用于可变长度字段的表

用法:

OPTIMIZE [ LOCAL | NO_WRITE_TO_BINLOG]  TABLE <table_list>

支持的存储引擎:MyISAM & InnoDB.


5.监控日志文件方法:

show status like 'Innodb%log%';


6.监控缓冲池:

show engine innodb status;

show status like 'innodb%buf%';

Free buffers:空的可用于缓冲数据的缓冲段个数;

Modified pages:发生变化的页数;

Pending reads:等待中的读请求个数,应该维持在低水平;

Pending writes:等待中的写请求个数,应该维持在低水平。

Hit rate:成功访问缓冲区的请求个数与总请求个数之间的比例,这个幽会最好接近于1:1。


7.在主从架构中,最影响slave延迟于master的原因是:mater可以同时运行多个事条,而slave是单线程的,不管有多个个内核,同时只能运行一个事务。

其它影响slave延迟于master的原因:网络延时,长查询,磁盘读取I/O限制,锁竞争及InnoDB线程同步启动。


8.Innodb_thread_concurrency的运用:在多处理器及多个磁盘运行mysql时,把此参数的值设置为:处理器个数 + 独立磁盘个数可以提高系统性能(频繁使用INNODB时),默认值为0 。

你可能感兴趣的:(mysql)