12
返回列表 发新帖
楼主: yuyu16300

1个困扰我3个多月没解决的mysql性能问题

[复制链接]
论坛徽章:
27
优秀写手
日期:2013-12-18 09:29:09ITPUB季度 技术新星
日期:2012-08-15 14:50:13嫦娥
日期:2013-03-04 09:47:05数据库板块每日发贴之星
日期:2011-09-08 01:01:01数据库板块每日发贴之星
日期:2011-09-11 01:01:01数据库板块每日发贴之星
日期:2011-09-10 01:01:02数据库板块每日发贴之星
日期:2011-09-09 01:01:01ITPUB十周年纪念徽章
日期:2011-11-01 16:26:59ITPUB 11周年纪念徽章
日期:2012-09-28 17:34:422013年新春福章
日期:2013-03-04 09:50:49
11#
发表于 2014-6-14 10:58 | 只看该作者
lujinke 发表于 2014-6-12 23:23
CPU负载不该,可以看一下此时的磁盘IO和网络IO,是否在做全备之类的事情

全备时间不会那么长吧。

使用道具 举报

回复
论坛徽章:
3
懒羊羊
日期:2015-03-04 14:52:112015年新春福章
日期:2015-03-06 11:58:18蒙奇·D·路飞
日期:2017-09-21 11:23:37
12#
发表于 2014-6-14 13:14 | 只看该作者
mchdba 发表于 2014-6-14 10:58
全备时间不会那么长吧。

全备15分钟还长?逻辑备份很慢的,除非用的是物理备份方法

使用道具 举报

回复
论坛徽章:
4
2012新春纪念徽章
日期:2012-01-04 11:54:262013年新春福章
日期:2013-02-25 14:51:242014年新春福章
日期:2014-02-18 16:43:09马上有钱
日期:2014-02-18 16:43:09
13#
发表于 2014-6-16 10:57 | 只看该作者
mysqldumpslow -s r -t 10 /usr/local/mysql/slow.log 看出访问次数最多的20个sql语句和返回记录集最多的20个sql 贴出你的信息

使用道具 举报

回复
论坛徽章:
9
蛋疼蛋
日期:2011-10-18 11:00:17ITPUB十周年纪念徽章
日期:2011-11-01 16:25:51蜘蛛蛋
日期:2011-11-09 13:48:06迷宫蛋
日期:2011-11-24 10:38:342012新春纪念徽章
日期:2012-01-04 11:56:44蜘蛛蛋
日期:2013-07-12 21:52:36凯迪拉克
日期:2013-12-12 09:53:072014年新春福章
日期:2014-02-18 16:44:08马上有对象
日期:2014-02-18 16:44:08
14#
发表于 2014-6-16 13:12 | 只看该作者
1,设置set global innodb_stats_on_metadata=OFF; 观察看看

2,把
show create table table_name\G
show global variables like '%table%';
结果贴出来看看

使用道具 举报

回复
论坛徽章:
5
双黄蛋
日期:2011-07-05 09:45:13咸鸭蛋
日期:2011-07-12 23:03:41ITPUB十周年纪念徽章
日期:2011-11-01 16:25:22双黄蛋
日期:2011-12-26 15:28:03ITPUB 11周年纪念徽章
日期:2012-10-09 18:13:33
15#
发表于 2014-6-17 09:24 | 只看该作者
感觉和IO有关系啊

使用道具 举报

回复
论坛徽章:
0
16#
 楼主| 发表于 2014-6-18 18:43 | 只看该作者
dukope 发表于 2014-6-16 13:12
1,设置set global innodb_stats_on_metadata=OFF; 观察看看

2,把

mysql> show create table fanwe_user\G;
*************************** 1. row ***************************
       Table: fanwe_user
Create Table: CREATE TABLE `fanwe_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_name` varchar(255) NOT NULL,
  `user_pwd` varchar(255) NOT NULL,
  `create_time` int(11) NOT NULL,
  `update_time` int(11) NOT NULL,
  `login_ip` varchar(255) NOT NULL,
  `group_id` int(11) NOT NULL,
  `is_effect` tinyint(1) NOT NULL,
  `is_delete` tinyint(1) NOT NULL,
  `email` varchar(255) NOT NULL,
  `mobile` varchar(255) NOT NULL,
  `score` int(11) NOT NULL,
  `money` double(20,4) NOT NULL,
  `verify` varchar(255) NOT NULL,
  `code` varchar(255) NOT NULL COMMENT '鐧诲綍鐢ㄧ殑鏍囪瘑鐮?,
  `pid` int(11) NOT NULL,
  `login_time` int(11) NOT NULL,
  `referral_count` int(11) NOT NULL,
  `password_verify` varchar(255) NOT NULL,
  `integrate_id` int(11) NOT NULL,
  `sina_id` int(11) NOT NULL,
  `renren_id` int(11) NOT NULL,
  `kaixin_id` int(11) NOT NULL,
  `sohu_id` int(11) NOT NULL,
  `lottery_mobile` varchar(255) NOT NULL,
  `lottery_verify` varchar(255) NOT NULL,
  `verify_create_time` int(11) NOT NULL,
  `tencent_id` varchar(255) NOT NULL,
  `referer` varchar(255) NOT NULL,
  `login_pay_time` int(11) NOT NULL,
  `focus_count` int(11) NOT NULL COMMENT '鍏虫敞鍒?汉鐨勬暟閲?,
  `focused_count` int(11) NOT NULL COMMENT '绮変笣鏁?,
  `province_id` int(11) NOT NULL,
  `city_id` int(11) NOT NULL,
  `sex` tinyint(1) NOT NULL DEFAULT '-1',
  `my_intro` varchar(255) NOT NULL,
  `is_merchant` tinyint(1) NOT NULL,
  `merchant_name` varchar(255) NOT NULL,
  `is_daren` tinyint(1) NOT NULL,
  `daren_title` varchar(255) NOT NULL,
  `step` tinyint(1) NOT NULL,
  `byear` int(4) NOT NULL,
  `bmonth` int(2) NOT NULL,
  `bday` int(2) NOT NULL,
  `locate_time` int(11) DEFAULT '0' COMMENT '鐢ㄦ埛鏈

使用道具 举报

回复
论坛徽章:
0
17#
 楼主| 发表于 2014-6-18 18:44 | 只看该作者
dukope 发表于 2014-6-16 13:12
1,设置set global innodb_stats_on_metadata=OFF; 观察看看

2,把

mysql> show global variables like '%table%';
+----------------------------------------+----------+
| Variable_name                          | Value    |
+----------------------------------------+----------+
| big_tables                             | OFF      |
| innodb_file_per_table                  | OFF      |
| innodb_table_locks                     | ON       |
| lower_case_table_names                 | 1        |
| max_heap_table_size                    | 16777216 |
| max_tmp_tables                         | 32       |
| old_alter_table                        | OFF      |
| performance_schema_max_table_handles   | 100000   |
| performance_schema_max_table_instances | 50000    |
| sql_big_tables                         | OFF      |
| table_definition_cache                 | 400      |
| table_open_cache                       | 1520     |
| tmp_table_size                         | 70254592 |
| updatable_views_with_limit             | YES      |
+----------------------------------------+----------+
14 rows in set (0.00 sec)

使用道具 举报

回复
论坛徽章:
9
蛋疼蛋
日期:2011-10-18 11:00:17ITPUB十周年纪念徽章
日期:2011-11-01 16:25:51蜘蛛蛋
日期:2011-11-09 13:48:06迷宫蛋
日期:2011-11-24 10:38:342012新春纪念徽章
日期:2012-01-04 11:56:44蜘蛛蛋
日期:2013-07-12 21:52:36凯迪拉克
日期:2013-12-12 09:53:072014年新春福章
日期:2014-02-18 16:44:08马上有对象
日期:2014-02-18 16:44:08
18#
发表于 2014-7-25 16:30 | 只看该作者
yuyu16300 发表于 2014-6-18 18:44
mysql> show global variables like '%table%';
+----------------------------------------+---------- ...

设置完后还很慢吗?

使用道具 举报

回复
论坛徽章:
2
2011新春纪念徽章
日期:2011-01-04 10:34:48ITPUB十周年纪念徽章
日期:2011-11-01 16:24:04
19#
发表于 2014-12-25 14:19 | 只看该作者
dukope 发表于 2014-6-16 13:12
1,设置set global innodb_stats_on_metadata=OFF; 观察看看

2,把

innodb_stats_on_metadata 和 desc 语句没关系的,只有 show table status,show index 语句和对 information_schema 的 tables,statistics 表的查询才会触发统计信息的收集。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表