发布时间:2018-03-22 13:09:27

sys schema视图摘要    sys schema视图中包含了很多以各种方式总结的Performance Schema表的视图,这些视图大多数都是成对出现,使得每组视图中的一个成员具有与另一个成员相同的名称,加上一个X$前缀。例如host_summary_by_file_io视图汇总按照主机分组的文件I/O延迟。没有X$前缀的视图提供了更加友好且易.........【阅读全文】

阅读(31) | 评论(0) | 转发(0)

发布时间:2017-09-12 15:59:03

在MySQL5.6/5.7之前的版本中,如MySQL5.5,如果要修改ib_logfile(redo log)大小,步骤如下:1)执行set global innodb_fast_shutdown=0命令,把所有脏数据写入磁盘;2)执行mysqladmin shutdown命令关闭数据库;3)在my.cnf文件里修改innodb_lof_file_size参数值;4)执行mv ib_logfile* ***bak命令,将redo log移动.........【阅读全文】

阅读(61) | 评论(0) | 转发(0)

发布时间:2017-09-08 11:26:13

 MySQL5.6中,使用union all相当于创建一张临时表,这在执行大的联合查询时候会增加I/O开销,降低查询速度。 例如执行以下SQL语句: (select id from accessLog order by id) union all (select id from access_test order by id); 在MySQL5.6环境:点击(此处)折叠或打开.........【阅读全文】

阅读(61) | 评论(0) | 转发(0)

发布时间:2017-09-07 17:03:31

 测试一个案例,测试环境分别为MySQL5.5和MySQL5.7。 在MySQL5.5环境中:点击(此处)折叠或打开mysql> select * from access_test order by rand() desc limit 5;+---------+------------------------------------------+------------+---------------------+-----.........【阅读全文】

阅读(62) | 评论(0) | 转发(0)

发布时间:2017-09-07 15:48:19

 MySQL的子查询一直以来都是性能差的著称,解决方法是以join代替。 MySQL5.5版本中该查询先把accessLog表中版本为2.2的数据线过滤出来,然后每个符合条件的数据都与内表进行一次select id from accessLog_01,因此性能低下。MySQL5.5采取的解决方法是将in重写为exists。 在MySQL5.6/5.7版本中,子查询执.........【阅读全文】

阅读(60) | 评论(0) | 转发(0)

发布时间:2017-09-06 14:26:12

 通常,MySQL将错误日志输出在hostname.err文件中,但MySQL5.7可以将错误日志打印到操作系统日志中,具体操作如下: MySQL服务器启动的时候,mysqld_safe加 --syslog参数,如下: 启动MySQL服务:[root@mysql log]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --syslog --user=mysq.........【阅读全文】

阅读(31) | 评论(0) | 转发(0)

发布时间:2017-09-06 14:04:21

 在MySQL5.5版本中,explain查看执行计划,只能支持select语句,但是在MySQL5.6/5.7版本中,可以支持DML语句,即UPDATE、DELETE、INSERT。 建立测试表accessLog和accessLog_bak进行测试:点击(此处)折叠或打开mysql> explain select * from accessLog where id=16649850;.........【阅读全文】

阅读(32) | 评论(0) | 转发(0)

发布时间:2017-09-06 12:51:28

 MySQL5.6不支持一个表有多个UPDATE/DELETE/INSERT触发器。 下边看一个例子: 创建三个测试表:点击(此处)折叠或打开mysql> create table t_trig_test_01 (name varchar(10));Query OK, 0 rows affected (0.07 sec)mysql> create .........【阅读全文】

阅读(30) | 评论(0) | 转发(0)

发布时间:2017-09-06 10:19:56

 在MySQL5.7之前的版本中,函数索引是无法用到索引的,也不支持虚拟列,下边的SQL执行时候回进行全表扫描: select * from t1 where mod(mode_id,8)=1 MySQL5.7支持虚拟列,并且可以使用函数索引。 确定数据库版本:点击(此处)折叠或打开mysql> select version();.........【阅读全文】

阅读(60) | 评论(0) | 转发(0)

发布时间:2017-09-05 17:51:09

  对于innodb存储引擎,例如删除一行,这些行只是标记为“已删除”,而不是真正从索引中物理删除了,因而空间也没有真正得到释放。Innodb的Purge线程会异步的来清理这些没有用的索引键和行,但是依然没有把这些释放出来的空间给系统用,因而会导致页面中存在很多空洞。  MySQL5.7之前的版本中,需要使用OPT.........【阅读全文】

阅读(60) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册