Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Mysql在xampp上意外停止_Php_Mysql_Performance_Xampp_Innodb - Fatal编程技术网

Php Mysql在xampp上意外停止

Php Mysql在xampp上意外停止,php,mysql,performance,xampp,innodb,Php,Mysql,Performance,Xampp,Innodb,我有生产软件,每个表的行数超过50K。它在插入和值检索方面执行缓慢。表已包含索引。我的Ram是14GB,带有氙气处理器 如果我从my.ini文件中增加innodb\u buffer\u poll\u size3G或更大,那么mysql会意外停止。问题是什么。我现在能做什么?不要使用mysql_*接口 SELECT Line FROM sewing_effi WHERE DT='$dt' ORDER BY

我有生产软件,每个表的行数超过50K。它在插入和值检索方面执行缓慢。表已包含索引。我的Ram是14GB,带有氙气处理器


如果我从my.ini文件中增加
innodb\u buffer\u poll\u size
3G或更大,那么mysql会意外停止。问题是什么。我现在能做什么?

不要使用mysql_*接口

        SELECT  Line
            FROM  sewing_effi
            WHERE  DT='$dt'
            ORDER BY  Line ASC"
DT
的数据类型是什么?(请提供
显示创建表

假设
DT
是一个
DATE
,那么您需要
索引(DT,Line)
来提高效率

为此:

        SELECT  buyer.Buyer,ordr.ordr,ordr.Ship_Date,colour.Colour,sewing_effi.OP,
                sewing_effi.HEL,sewing_effi.Target,sewing_effi.TWH,sewing_effi.Line,
                sid_cutting_inventory.DT,
                SUM(cutting_inventory.qc_pass) AS Input,
                SUM(sewing_output.QC_Pass) AS Toutput, SUM(sewing_output.Recieved) AS Recv
            FROM  cutting_inventory
            INNER JOIN  sid_cutting_inventory
                ON cutting_inventory.SID=sid_cutting_inventory.SID
            LEFT JOIN  buyer  ON cutting_inventory.Buyer=buyer.CBuyer
            LEFT JOIN  ordr  ON cutting_inventory.Buyer=ordr.CBuyer
              AND  cutting_inventory.Ordr=ordr.COrdr
            INNER JOIN  colour  ON cutting_inventory.Buyer=colour.CBuyer
              AND  cutting_inventory.Ordr=colour.COrdr
              AND  cutting_inventory.Colour=colour.CColour
            LEFT JOIN  sewing_output  ON sewing_output.Barcode=cutting_inventory.Barcode
            JOIN  sewing_effi  ON sewing_effi.Line=sid_cutting_inventory.Line
            WHERE  sewing_effi.Line ='$li'
              AND  sewing_effi.DT='$dt'
              AND  ordr.Ship_Status='0'
              AND  sid_cutting_inventory.Challan_Close_SS='0'
              AND  sid_cutting_inventory.DT NOT BETWEEN '2017-01-31  7:00:00'
                                                    AND '2018-03-31 23:00:00'
            GROUP BY  sewing_effi.Line, buyer.Buyer, ordr.ordr,colour.Colour
            ORDER BY  sewing_effi.Line"
                          )
我发现将
左连接
内连接
混合在一起非常混乱。请提供
解释选择…
我会做一些猜测

sewing_effi:  INDEX(Line, DT)  -- in either order
sid_cutting_inventory:  INDEX(Challan_Close_SS, DT) -- in this order

您是否安装了32位或64位版本的MySQL?

安装了32位版本的MySQL。我附上了一些表的快照并进行了解释。我想您很容易发现我的问题。

*Challan_接收_SSD和Challan_关闭_SSD列存储日期
*Challan_Receive_SST和Challan_Close_SST列存储时间

查看错误日志。服务器不会在没有记录的情况下停止。你能建议我如何加快输入速度和报告显示,大约有15个用户使用条形码输入。那么,真正的问题是什么?如何加快查询速度?然后查看慢速查询日志,或者使用执行计划检查长时间运行的查询。或者是您的服务器不时随机崩溃的问题(如您所问)?然后查看日志,找出原因我有一个生产软件。如果行增加50K,则减慢值插入和值检索速度。大约有15个用户提供输入。至少有30个用户连续显示报告。它安装在vmware上。因此我将innodb_buffer_poll_大小从16M增加到2G。因为有时mysqld.exe服务使用率100%cpu。所以我想增加innodb_buffer_poll_大小。但是如果我将其增加到2G以上,那么mysql就会崩溃。我的主要问题是输入和报告显示的速度问题。你有没有尝试过我建议的任何方法,比如缓慢的查询日志、执行计划或错误日志?