sql >> Databáze >  >> RDS >> Mysql

PHP Database Dump Script - jsou nějaké problémy?

Ten scénář má vážné problémy, které narušují dohodu. Nebude to fungovat pro žádnou jinou než nejtriviálnější databázi.

  • Hodnoty NULL nejsou podporovány.
  • Znakové sady se neberou v úvahu.
  • Názvy tabulek nejsou odděleny.
  • Jsou podporovány pouze tabulky – nikoli pohledy, uložené procedury, spouštěče, funkce atd.
  • addslashes() není bezpečné pro znakovou sadu .
  • mysql_query() předběžně načte vše řádků z tabulky, takže pokud zadáte dotaz na tabulku s miliony řádků, překročíte limit paměti PHP. Použijte mysql_unbuffered_query() namísto. Při druhém zamyšlení vidím, že shromažďujete veškerý výstup v $return, takže je to diskutabilní.
  • Vaše potlačení chyb pomocí @ operátor je špatná praxe. Zkontrolujte, zda nedošlo k chybám, a pomocí informativní zprávy selžte.

Váš požadavek nepoužívat mysqldump je absurdní.

Proč si dávat tolik práce s vynalézáním kola, a ještě se tak mýlit? Stačí spustit mysqldump přes shellexec() .

Viz také:



  1. MySQL Auto Increment Custom Values

  2. Jak vytvořit spouštěče v knihovně migrace Codeigniter

  3. Ovladač nemohl navázat zabezpečené připojení k serveru SQL Server pomocí šifrování Secure Sockets Layer (SSL).

  4. Operace SQL Server CRUD