Php 查询过程中与mysql服务器的连接中断,请帮助优化视图查询
我最近尝试了一些问题,从我的视图加载结果。 似乎花了40多秒,与mysql的连接丢失了。 我将配置以下内容:Php 查询过程中与mysql服务器的连接中断,请帮助优化视图查询,php,mysql,Php,Mysql,我最近尝试了一些问题,从我的视图加载结果。 似乎花了40多秒,与mysql的连接丢失了。 我将配置以下内容: mysql.connect_timeout = -1 max_execution_time 700 max_input_time 700 跳起来解决我的问题,但没有改变。 我的示例查询是: SELECT usuario as 'Encargado', Fecha as 'Fecha', Periodo as 'Periodo', Area as 'Área', Profesor a
mysql.connect_timeout = -1
max_execution_time 700
max_input_time 700
跳起来解决我的问题,但没有改变。
我的示例查询是:
SELECT usuario as 'Encargado', Fecha as 'Fecha', Periodo as 'Periodo', Area as 'Área', Profesor as 'Profesor', TemaAvanzado as 'Tema avanzado', Tarea,FechaPresentacion as 'Fecha de presentación' FROM tm_leccionario_view WHERE curso = 'S1A' ORDER BY fecha DESC, periodo ASC
我应该有171张唱片。但我有一个错误“#2003:在查询过程中与MySQL服务器失去连接”
然后我跑:
EXPLAIN SELECT usuario AS 'Encargado', Fecha AS 'Fecha', Periodo AS 'Periodo', Area AS 'Área', Profesor AS 'Profesor', TemaAvanzado AS 'Tema avanzado', Tarea, FechaPresentacion AS 'Fecha de presentación'
FROM tm_leccionario_view
WHERE curso = 'S1A'
ORDER BY fecha DESC , periodo ASC
并获得:
我的观点定义是:
VIEW tm_leccionario_view AS select s.group_id AS group_id,
(select p.nombre from parametros p where ((p.valor = s.form_id) and (p.tipo = 'CURSO'))) AS Curso,
(select ss.element_value from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 1))) AS Fecha,
(select substring_index(ss.element_value,' - ',1) from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 2))) AS Area,
(select substring_index(ss.element_value,' - ',-(1)) from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 2))) AS Profesor,
(select ss.element_value from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 3))) AS Periodo,
(select ss.element_value from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 4))) AS TemaAvanzado,
(select ss.element_value from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 5))) AS Tarea,
(select ss.element_value from wp_formmaker_submits ss where ((ss.form_id = s.form_id) and (ss.group_id = s.group_id) and (ss.element_label = 6))) AS FechaPresentacion,
(select u.user_login from wp_users u where (u.ID = s.user_id_wd)) AS Usuario from wp_formmaker_submits s where (s.element_label = 1)
你认为问题出在我的问题的定义上吗?如果是这样,我如何优化它
上周,当我在主表上有1000条记录时,我没有这个问题。为什么你有fecha DESC的,
订单和periodo ASC
更改为,和
你的问题肯定是这个视图,这很糟糕,但我们无法真正帮助你。谢谢@JurickPastechiGenaro,但在MySQL中我无法使用和order by.true,只是在pc上,而不是在手机上,以便更好地查看查询,你是对的。我的错我误解了!我可以使用限制0,30来检索记录(解析查询需要40秒),但当我更改限制0,31时,我失去了连接。服务器(php、mysql)中是否有任何限制此时间的配置?为什么您有fecha DESC
&periodo ASC
的、介于之间的订单,将更改为和您的问题肯定是该视图,它很糟糕,但我们无法真正帮助您。谢谢@JurickPastechiGenaro,但在MySQL中我无法使用和order by.true,只是在pc上,而不是在手机上,以便更好地查看查询,你是对的。我的错我误解了!我可以使用限制0,30来检索记录(解析查询需要40秒),但当我更改限制0,31时,我失去了连接。服务器(php、mysql)中是否有限制此时间的配置?