Automatický otočný parkovací systém s otočným vozem pro stohování

moje situace je následující:

  • Musím udělat automatické zálohování databáze
  • Mám pouze přístup FTP, PhpMyAdmin a PHP

Tak:

  • Žádné SSH znamená, že nemohu použít mysqldump
  • Žádné Perl (a žádný cron) znamená, že nemohu volat skript mysqldumper cron

Znáte nějaký nástroj, který by dělal bez asistence zálohování databáze? Pod pojmem bez pomoci mám na mysli, že bych to chtěl nazvat například pomocí curl příkazu ...

Pravděpodobně v blízké budoucnosti nastavím VPS, ale v tuto chvíli jsem u tohoto poskytovatele!

Zní to jako práce pro phpMyBackupPro, kterou jsem už dávno použil v podobné situaci. Umožní vám vytvořit plánovanou zálohu voláním jednoduchého skriptu PHP na vašem serveru, který můžete volat pomocí adresy URL. Zálohy pak mohou být buď uloženy na serveru, odeslány na FTP na jiný server nebo odeslány poštou.

Ve svém starém nastavení jsem dokonce napsal jednoduchý skript XML-RPC, který by zavolal naplánovaný záložní skript phpMBP (zde pojmenovaný 'ping.php'), když pingoval např. WordPress:

      flerror  0    zpráva Díky za ping.        ?> var13 ->

Doporučil bych však co nejdříve přejít na VPS. Vzhledem k tomu, že VPS jsou levné a hojné, dnes je to ve srovnání se sdílenými hostiteli nevýrazné.

  • Vypadá slibně !! Zítra to prozkoumá. Jakého poskytovatele VPS používáte?
  • Momentálně používám cloudové servery Rackspace.
  • phpMyBackupPro dělá svou práci. Rád bych viděl jeho barebone verzi, se vším, co bylo odstraněno, kromě záložního skriptu. Možná jednoho dne budu mít čas to připravit!

Rychlé vyhledávání google odhalilo skript, který tvrdí, že používá cURL pro přístup k phpMyAdmin a provedení výpisu, ale osobně jsem to netestoval:

http://picoforge.int-evry.fr/websvn/filedetails.php?repname=curlmyback&path=%2Ftrunk%2Fcurl-backup-phpmyadmin.sh&rev=0&sc=0

mysqldump funguje pro vzdálené hostitele - použijte -h příznak k určení hostitele, ke kterému se chcete připojit (a ujistěte se, že váš účet sdíleného hostingu je nakonfigurován tak, aby přijímal připojení z adresy IP vzdáleného hostitele a přístupových údajů).

Je také velmi pravděpodobné, že mysqldump je nainstalován na serveru a je dále pravděpodobné, že operátoři provádění PHP jsou povoleni (hrozný nápad pro sdílený hosting, ale bohužel docela běžný), takže můžete být schopni používat PHP k provádění příkazů shellu a dosažení svého cíle.


Upravit: Pokud jsou vzdálená připojení MySQL a operátoři provádění zakázáni, může být řešením skript cURL, který doporučil phrac, ale i když tento skript nesplňuje vaše potřeby, stále máte možnosti (pokud máte přístup k datům a spouštíte skripty, můžete vždy získat kopii).

Li mysqldump je nainstalován na vašem sdíleném hostitelském serveru, můžete vytvořit úlohu cron pro výpis databáze do webového adresáře - např. mysqldump dbname > /path/to/www/subdir/backup.sql (jen se ujistěte, že podadresář blokuje přístup nedůvěryhodnými IP adresami)

Pokud nemáte mysqldump na sdíleném hostitelském serveru můžete napsat skript PHP, který provede a SELECT ... INTO OUTFILE dotaz (opět pod chráněným webovým adresářem s oprávněním shovívavého zápisu).

Pokud nemáte možnost udělit uživateli MySQL dostatečná oprávnění k zápisu do souboru, můžete stále napsat skript PHP, který (je to škaredý řešení) odráží MySQL INSERT příkazy pro vaše data v reakci na požadavky a vložte tento skript do webového adresáře.

  • Bohužel ani jeden nefunguje. Prováděcí operace jsou uzamčeny a server skutečně přijímá pouze připojení HTTP a FTP.
  • 1 @Palantir: Doporučil bych okamžitě změnit hostitele webů, než to odkládat na „blízkou budoucnost“. Jakýkoli bezplatný webový hostitel, který nenabízí přístup SSH a má uživatelé, kteří používají FTP, ořezává své uživatele a nekompetentní.

Pracoval pro vás: Charles Robertson | Chcete nás kontaktovat?

užitečné informace