Media Papierkorb über Konsole löschen

Mit dem Konsole Befehl sw:media:cleanup kann ich nach einem Import alte ungenutzte Bilder in den Papierkorb schieben. Das klappt prima. Jetzt brauche ich aber noch den Konsole Befehl, um den Papierkorb danach zu leeren. Dazu ist hier http://community.shopware.com/Shopware- … _1650.html nichts dokumetiert.

Hi, es gibt einen ‘–delete’ switch, der macht das :slight_smile: Besten Gruß, Daniel

1 „Gefällt mir“

Klasse, danke für die prompte Antwort. Jetzt fehlt mir nur noch der Schalter, der verhindert, dass der Konsole Befehl nachfragt, ob ich wirklich löschen möchte. Der Schalter heißt -n. So ganz am Ziel bin ich noch nicht, denn der Papierkorb ist voll, sehr voll, und ich bekomme nun einen Speicherfehler wenn ich sw:media:cleanup --delete -n aufrufe. Gibt es noch einen anderen Weg, die Bilder überhaupt einmal weg zu bekommen, ohne 400 Seiten im Media-Manager einzeln zu löschen?

das problem hatte ich auch. du kannst das memorylimit für dein consolen php hochsetzen mittels php -d memory\_limit=280M my\_script.php für den ersten Aufruf ist das script leider auch auf consoleneben sehr speicherhungrig. anders gehts nicht

1 „Gefällt mir“

Super, alles wieder clean!

Wow, super Sache. Muss man eigentlich danach noch sw:thumbnail:cleanup durchführen, um wirklich allen ungenutzten Inhalt zu löschen?

Grüße
ludwig

Hallo zsuammen,

ich habe ein ähnliches Problem. Leider haben sich in der Zwischenzeit so viele Bilder im Papierkorb gesammelt, dass er sich auch nicht mehr über die Konsole löschen lässt. 

Der Aufruf über die Konsole wird mit “Killed” quittiert, auch wenn ich memory_limit bis auf 16000M setze. Vorher werde ich noch gefragt, ob ich die Bilder löschen möchte. Danach kommt die Meldung “Killed”. Wenn ich mit --delte -n arbeite, dann kommt es ebenfalls zu dieser Meldung.

Der Aufruf über die Konsole funktionierte mal, als noch nicht so viele Bilder im Papierkorb waren. 

Jemand eine Idee, wie ich den Papierkorn leer bekomme?

 

Danke schon mal!

Ich hab auch ein Problem beim Löschen über diesen Weg…

Ich bekomme folgende Meldung:

/var/www/html# bin/console sw:media:cleanup -vvv --delete

                                                                                               
  [Doctrine\DBAL\DBALException]                                                                
  An exception occurred while executing 'INSERT INTO s_media_used                              
                      SELECT DISTINCT NULL, m.id                                               
                      FROM s_media m                                                           
                      INNER JOIN s_articles_img                                                
                          ON s_articles_img.media_id = m.id':                                  
  SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction  
                                                                                               

Exception trace:
 () at /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php:119
 Doctrine\DBAL\DBALException::driverExceptionDuringQuery() at /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:1027
 Doctrine\DBAL\Connection->exec() at /var/www/html/engine/Shopware/Bundle/MediaBundle/GarbageCollector.php:241
 Shopware\Bundle\MediaBundle\GarbageCollector->handleTable() at /var/www/html/engine/Shopware/Bundle/MediaBundle/GarbageCollector.php:139
 Shopware\Bundle\MediaBundle\GarbageCollector->find() at /var/www/html/engine/Shopware/Bundle/MediaBundle/GarbageCollector.php:83
 Shopware\Bundle\MediaBundle\GarbageCollector->run() at /var/www/html/engine/Shopware/Bundle/MediaBundle/Commands/MediaCleanupCommand.php:128
 Shopware\Bundle\MediaBundle\Commands\MediaCleanupCommand->handleMove() at /var/www/html/engine/Shopware/Bundle/MediaBundle/Commands/MediaCleanupCommand.php:61
 Shopware\Bundle\MediaBundle\Commands\MediaCleanupCommand->execute() at /var/www/html/vendor/symfony/console/Command/Command.php:259
 Symfony\Component\Console\Command\Command->run() at /var/www/html/vendor/symfony/console/Application.php:844
 Symfony\Component\Console\Application->doRunCommand() at /var/www/html/engine/Shopware/Components/Console/Application.php:140
 Shopware\Components\Console\Application->doRunCommand() at /var/www/html/vendor/symfony/console/Application.php:192
 Symfony\Component\Console\Application->doRun() at /var/www/html/engine/Shopware/Components/Console/Application.php:132
 Shopware\Components\Console\Application->doRun() at /var/www/html/vendor/symfony/console/Application.php:123
 Symfony\Component\Console\Application->run() at /var/www/html/bin/console:38

                                                                                               
  [PDOException]                                                                               
  SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction  
                                                                                               

Exception trace:
 () at /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:1025
 PDO->exec() at /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:1025
 Doctrine\DBAL\Connection->exec() at /var/www/html/engine/Shopware/Bundle/MediaBundle/GarbageCollector.php:241
 Shopware\Bundle\MediaBundle\GarbageCollector->handleTable() at /var/www/html/engine/Shopware/Bundle/MediaBundle/GarbageCollector.php:139
 Shopware\Bundle\MediaBundle\GarbageCollector->find() at /var/www/html/engine/Shopware/Bundle/MediaBundle/GarbageCollector.php:83
 Shopware\Bundle\MediaBundle\GarbageCollector->run() at /var/www/html/engine/Shopware/Bundle/MediaBundle/Commands/MediaCleanupCommand.php:128
 Shopware\Bundle\MediaBundle\Commands\MediaCleanupCommand->handleMove() at /var/www/html/engine/Shopware/Bundle/MediaBundle/Commands/MediaCleanupCommand.php:61
 Shopware\Bundle\MediaBundle\Commands\MediaCleanupCommand->execute() at /var/www/html/vendor/symfony/console/Command/Command.php:259
 Symfony\Component\Console\Command\Command->run() at /var/www/html/vendor/symfony/console/Application.php:844
 Symfony\Component\Console\Application->doRunCommand() at /var/www/html/engine/Shopware/Components/Console/Application.php:140
 Shopware\Components\Console\Application->doRunCommand() at /var/www/html/vendor/symfony/console/Application.php:192
 Symfony\Component\Console\Application->doRun() at /var/www/html/engine/Shopware/Components/Console/Application.php:132
 Shopware\Components\Console\Application->doRun() at /var/www/html/vendor/symfony/console/Application.php:123
 Symfony\Component\Console\Application->run() at /var/www/html/bin/console:38

sw:media:cleanup [--delete]

Was kann ich da machen?

Hi,

falls Du einen eigenen Server mit root Zugriff hast:

VG