Mysql: ibdata zu groß – Daten aufteilen mit „innodb_file_per_table“

8. Januar 2013 at 11:17

Per Standard Konfiguration des mySql-Servers, werden alle Daten aus allen Datenbanken, in eine einzige Datei Namens „ibdata“ im mysql-data-ordner geschrieben. Diese Datei wächst kontinuierlich, auch beim löschen von Datenbanken bleibt die Größe erhalten (schrumpfen nicht möglich).

In der Praxis ist das nicht gerade optimal, lösen könnt ihr dieses Problem durch hinzufügen des Eintrages „innodb_file_per_table“ in der my.ini bzw. my.cnf im [mysqld]-Abschnitt der Konfigurations-Datei. Danach werden (Server-Neustart) jeweils pro Datenbank entsprechende ibdata-files angelegt, diese können dann auch beim löschen einer Datenbank mit gelöscht werden.

XDebug auf Zend Server CE (Community Edition) unter Windows einrichten (mit PHP 5.2)

21. Juli 2011 at 12:55

zend logoZwar ist ZendDebugger beim Zend-Server integriert, allerdings habe ich ihn mit phpStorm nicht zum laufen bekommen, von d.h. hier ein kurzes HowTo wie ihr xDebug in ZendServer integrieren könnt:

Ladet die Datei php_xdebug-2.1.1-5.2-vc6-nts.dll (ggf. höhere Version, nts-version ist für die non-thread-saved apache – version … phpinfo erkennt ihr welche Version ihr benötigt, alternativ testen 😉 von http://xdebug.org/files/ und packt sie in das entsprechende Verzeichnis, z.b. C:\Program Files\Zend\ZendServer\lib\phpext

Wenn ihr XDebug einsetzt, müsst ihr vorher den Zend Debugger deaktiviert, das geht über die Zend-Server Adminoberfläche wie folgt::

  1. Login auf der Benutzeroberfläche: http://localhost/ZendServer
  2. zum Reiter Server Setup wechseln
  3. Den Zend Debugger durch Klick auf den Button Turn off deaktivieren
  4. PHP neu starten (Button rechts unten)

Jetzt noch in der php.ini xdebug einbinden (liegt unter C:\Programme\Zend\ZendServer\etc):

zend_extension=“C:\Program Files\Zend\ZendServer\lib\phpext\php_xdebug-2.1.1-5.2-vc6-nts.dll“
zend_extension=“C:\Program Files\Zend\ZendServer\lib\ZendExtensionManager.dll“

Achtung: ZendExtensionManager.dll darf nur nach der php_xdebug.dll eingebunden werden!

Jetzt noch Server neu starten und xdebug sollte verfügbar sein. Prüft dazu die phpinfo ob xdebug dort auftaucht!

ZendFramework: Datenbankabfrage / SQL Abfrage mit ZendFramework & Magento

15. Juli 2011 at 14:38

Mit dem folgenden Code-Schnippsel könnt ihr einfach eine sql-abfrage über zend in magento starten.

More information: framework.zend.com/manual/de/zend.db.select.html

$table = array('table_name);
$selectCol = array('table_id' , 'col_two');
$where = 'col_two >= ?';  // ? wird ersetzt mit zweitem wert in der where bedingung
$order = '';
$connection = Mage::getSingleton('core/resource')->getConnection('core_read');
$select = $connection->select()
->from($table, $selectCol)
->where($where, $this->lastExportDate)
->order($order);
echo $select->__toString();  // die komplette sql-abfrage ausgeben lassen
$result = $connection->fetchAll($select);

 

 

Zendstudio Update auf 8.0.1

24. Mai 2011 at 11:11

Es gibt ein neues ZendStudio Update auf version 8.0.1, folgende wichtige Änderungen gab es:

[fixed] In large PHP files (over 2000 lines) code parsing was very slow.
[fixed] Built-In PHP executables crashed on Warning or Error during local run/debug.
[fixed] JavaScript Validator threw Java Null Pointer Exception.
[fixed] Error „Unsupported Content Type“ occurred when opening a PHP file from the SVN Repositories or CVS Repositories view.
[fixed] Using the keyboard shortcut Toggle Breakpoint (Ctrl+Shift+B) resulted in a breakpoint of a wrong type (JS instead of PHP). NB: the fix will work only after workspace reset.
[fixed] Hyperlinks in tooltips were not working.
[fixed] Code Formatter used to remove the leading backslash in namespaced paths.
[fixed] When opening the Project Properties through the main menu (Project | Properties) the Remote Server Support page was not available.
[fixed] Refactor/Rename keyboard shortcut (Shift+Alt+R) was not working due to a conflict.

[improvement] Remote Server Support does not perform full re-scan of the remote resources, unless necessary.
[improvement] The Remote Search page has been removed from the Search dialog, because this functionality does not exist.
[improvement] Added keyboard shortcuts for file upload/download in Remote Server Support (Shift+Alt+P,U and Shift+Alt+P,D).
[improvement] PHP 5.3 is the new workspace default.

[update] Zend Framework Example Project (Guestbook) has been updated to the latest version from the Zend Framework project site.

Sollte bei euch nicht der Auto-Update anspringen, geht wie folgt vor:

  1. Go to Help | Install New Software
  2. Set Work With field to: http://zend.com/studio/8.0.1/update and hit enter
  3. Hit Select All, click Next and follow the instructions

Zendframework: The following code throws an exception with the wrong „Validate class not found from basename ‚EmailAddress'“ message

28. März 2011 at 18:48

Ihr erhaltet bei der Verwendung des ZendFrameworks unter PHP die Fehlermeldun „Validate class not found from basename ‚EmailAddress'“? Die Fehlermeldung ist etwas irreführend, eigentlich ist das reale Problem das MX checking unter Windows nicht verfügbar ist, jedenfalls bis 5.3 (ab PHP 5.3 sollte dies möglich sein).

Die dazu gehörige Klasse im ZendFramework:

Zend_Validate::is('email@provider.com', 'EmailAddress', array(Zend_Validate_Hostname::ALLOW_DNS, true));

Lösung: (L)unix basiertes System verwenden oder PHP 5.3 oder höher!

2 Tipps für die Arbeit mit Zend Framework und Ajax – Magento

24. März 2011 at 11:40

isXmlHttpRequest()

/**
* myAction from myController
*/
function myAction()
{
if  ($this->getRequest()->isXmlHttpRequest()) {
// do the handling of your ajax request
}
else {
// if it's not an ajax request then do regular handling here
}
}

JSON action helper

/**
* myAction from myController
*/
function myAction()
{
if ($this->getRequest()->isXmlHttpRequest()) {
// do the handling of your ajax request
$myArrayofData = array('a','b','c');
//encode your data into JSON and send the response
$this->_helper->json($myArrayofData);
//nothing else will get executed after the line above
}
else {
// if it's not an ajax request then do regular handling here
}
}
Weitere Tipps / nützliche Funktionen? Postet diese als Kommentar zum Artikel und ich nehme diese, wenn sinnvoll, mit in den Artikel auf.

Release von Zend Studio 8.0 Beta 2

30. September 2010 at 12:39

Das Release von Zend Studio 8.0 Beta 2 wurde heute veröffentlicht! Das Release der PHP IDE enthält folgende neue Features:

•           Betreiben und debuggen Sie Ihre PHP Applikation in einer virtuellen, produktionsähnlichen Umgebung, direkt von der Zend Studio Oberfläche mit neuer VMware Workstation Integration
•           Entwickeln Sie Ihren JavaScript Code schneller mit Content Assist Unterstützung für jQuery, Dojo, ExtJs, und Prototype
•           Debuggen Sie JavaScript Front-End Code und PHP Back-End Code in einer einzigen gemeinschaftlichen Debugging-Session, durch ein neues Set integrierter Ajax Tools
•           Entwickeln Sie Projekte über einen Remote-Server, transparent mit überabeitetem Remote System Support
•           Durchsuchen und ändern Sie Ihren Source Code schneller und problemloser, dank Verbesserungen der gesamten Oberfläche

Eclipse / ZendStudio: .htaccess Datei anzeigen / show .htaccess file

28. September 2010 at 18:53

Ihr möchtet im PHP Explorer in Eclipse oder ZendStudio auch die htaccess Datei anzeigen lassen?
Klickt auf das Filter-Symbol, wählt Filters und deaktiviert den Filter für .* resources (siehe screenshot)

eclipse zendstudio  menu project

ZendStudio Eclipse Update Site

23. September 2010 at 12:43

Sollte ein Update nicht möglich sein da keine Server bei „Available Software Sites“ angezeigt wird, fügt die folgenden hinzu:

Zend Studio Eclipse Update Site
http://downloads.zend.com/studio/updates

http://downloads.zend.com/studio-eclipse/updates/8_0/

http://downloads.zend.com/pdt

Den Upgrade-Guide mit weiteren Infos ihr hier

Probleme mit mod_rewrite beim Zend Server Community Edition

13. Juni 2010 at 03:03

zend logoNach dem Umstieg von XAMPP auf die Zend Server Community Edition musste ich fest stellen dass keine lokalen .htaccess-Dateien berücksichtigt werden, obwohl das mod_rewrite-Modul ordnungsgemäß geladen wurde.

Ein Blick in die httpd.conf des dazugehörigen Apache Webservers brachte schnell Klarheit. In der Apache-Konfiguration,  der httpd.conf, war die Direktive AllowOverride none für das Root-Verzeichnis (unter Windows standardmäßig: C:\Programme\Zend\Apache2/htdocs) gesetzt. Diese muss auf „all“ gesetzt werden damit .htacces-Dateien berücksichtigt werden, danach funktioniert mod_rewrite wie gewünscht.