Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP][ZF] Blad przy pobieraniudanych, Optymalizacja aplikacji na ZF
Piotrwusek
post
Post #1





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


Witam,

Uzywam ZF dla swojej aplikacji. Wszystko bylo ok, az nagle baza danych zrobila sie duza i przy pobieraniu danych przez Zend Paginatora wyskakuje taki blad:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 2013 Lost connection to MySQL server during query' in /library/Zend/Db/Statement/Pdo.php:228 Stack trace: #0 /library/Zend/Db/Statement/Pdo.php(228): PDOStatement->execute(Array) #1 /library/Zend/Db/Statement.php(303): Zend_Db_Statement_Pdo->_execute(Array) #2 /library/Zend/Db/Adapter/Abstract.php(480): Zend_Db_Statement->execute(Array) #3 /library/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query(Object(Zend_Db_Table_Select), Array) #4 /library/Zend/Db/Select.php(686): Zend_Db_Adapter_Pdo_Abstract->query(Object(Zend_Db_Table_Select)) #5 /library/Zend/Paginator/Adapter/DbSelect.php(142): Zend_Db_Select->query(2) #6 /library/Zend/Paginator/Adapter/DbSelect.php(183): Zend_Paginator_Adapter_DbSelect->setRowCount(Object(Zend_Db_Table_Select)) #7 [internal function]: Zend_Paginator_Adapter_DbSelect->count() #8 /library/Zend/Paginator.php(534): count(Object(Zend_Paginator_Adapter_DbTableSelect)) #9 /library/Zend/Pag in /library/Zend/Db/Statement/Pdo.php on line 234

Ustawiam limit ilosci pobieranych danych w zapytaniu, ale nie pomaga.

Ten post edytował Piotrwusek 9.09.2014, 13:33:28
Go to the top of the page
+Quote Post
Turson
post
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


http://stackoverflow.com/a/16586056
Go to the top of the page
+Quote Post
Piotrwusek
post
Post #3





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


Dzieki. (IMG:style_emoticons/default/wink.gif) Zwieksznie czasu oczywiscie pomoze doraznie. (IMG:style_emoticons/default/wink.gif)

Jednka poszukuje rozwiazania jak zbudowac zapytanie przy uzyciu zend paginatora aby ograniczyc pobieranie calej bazy danych. Ustawienie takich wartosci jak LIMIT w zapytaniu sql nie pomaga ;/

Aktualnie moje zapytanie w ZF wyglada nastepujaco: [dziala ale strasznie dlugo sie laduje]. Czy mozna to jakos zoptymalizowac

  1. $adapter = new Zend_Paginator_Adapter_DbTableSelect($sql);
  2. $adapter->setRowCount($users->select()->from('tabelka', array(Zend_Paginator_Adapter_DbSelect::ROW_COUNT_COLUMN => 'id')));
  3. $paginator = new Zend_Paginator($adapter);
  4. $paginator->setItemCountPerPage(30);


Rozwiazanie

  1. $sql = $db -> ... -> limit (100);
  2. $paginator = Zend_Paginator::factory($users->fetchAll($sql));


Ten post edytował Piotrwusek 10.09.2014, 05:12:53
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.09.2025 - 02:41