Online Tool Store Online Tool Store

Splitter Dump SQL

Podziel duży dump .sql na mniejsze pliki na bezpiecznych granicach instrukcji, zachowując schemat, dane i ograniczenia w porządku ładowalnym.

🔒 To narzędzie działa w całości w Twojej przeglądarce. Twoje pliki nigdy nie są wysyłane na serwer.

Wybierz plik .sql (plik .sql.gz również działa). Jest odczytywany lokalnie i nigdy nie jest przesyłany na serwer.

Pojedyncza duża instrukcja może przekroczyć ten cel, aby pozostać poprawna.

Jak działa SQL Dump Splitter

  1. Dodaj plik zrzutu - zwykły plik .sql lub skompresowany .sql.gz, oba działają, a odczyt odbywa się na stronie, więc nic nie jest przesyłane na serwer.
  2. Wybierz rozmiar fragmentu akceptowany przez narzędzie do importu lub limit hostingu.
  3. Wczytuj pliki w kolejności numerycznej. Narzędzie zachowuje oryginalną kolejność instrukcji ze zrzutu i nie narusza procedur składowanych, wyzwalaczy ani funkcji, dlatego przed importem sprawdź sekcje schematu, danych i ograniczeń.

FAQ

Dlaczego ograniczenia muszą być wczytywane na końcu?

Ponieważ pliki danych odwołują się do siebie nawzajem. Wczytanie kluczy obcych przed istnieniem wskazywanych wierszy kończy się błędem, dlatego standardowa kolejność to schemat, potem dane, a na końcu ograniczenia i indeksy.

Czy mogę podzielić plik w dowolnym miejscu?

Nie - podział w środku instrukcji tworzy pliki, które osobno są nieprawidłowym SQL-em. Podziały muszą przypadać na granice instrukcji, dlatego prosty podział według liczby linii zwykle się nie sprawdza.

Czy obsługuje procedury składowane, wyzwalacze i funkcje?

Tak. Zrzut, który zmienia separator instrukcji za pomocą DELIMITER ;; przy definiowaniu procedury, jest traktowany jako jeden niepodzielny blok - od linii otwierającej DELIMITER aż do zamykającej, dzięki czemu granica fragmentu nigdy nie trafia w środek treści procedury ani między DELIMITER ;; a zależną od niego treścią.

Czy mogę użyć skompresowanego zrzutu .sql.gz?

Tak - wystarczy dodać plik .gz bezpośrednio, a zostanie on zdekompresowany w przeglądarce przed podziałem, przy użyciu tego samego standardowego formatu gzip, jaki tworzą polecenie gzip oraz mysqldump | gzip. Nic nie jest przesyłane ani konwertowane po stronie serwera.

Dlaczego import jest nadal wolny po podziale?

Podział rozwiązuje problem z limitem rozmiaru, a nie z szybkością. Aby przyspieszyć import, wczytuj dane przed utworzeniem indeksów i grupuj partie w transakcje.

Czy działa tylko ze zrzutami MySQL?

Nie. Podział odbywa się ogólnie na średnikach kończących instrukcje, więc zrzut PostgreSQL lub innego SQL-a również dzieli się bezpiecznie. Specyficzna obsługa DELIMITER dla MySQL uruchamia się tylko wtedy, gdy zrzut faktycznie używa tej składni do procedur składowanych lub wyzwalaczy - w innym przypadku nic nie robi.

Jak wybrać rozmiar fragmentu?

Dopasuj go do tego, co odrzuca cały plik - phpMyAdmin i wielu dostawców hostingu ogranicza przesyłanie do wartości od kilku MB do kilkuset MB, więc sprawdź ten limit i wybierz rozmiar fragmentu wyraźnie poniżej niego. Mniejsze fragmenty oznaczają po prostu więcej plików do zaimportowania po kolei, bez innych wad.

Jak wypadamy na tle innych

FunkcjaOnline Tool StoreSkrypt CLIWtyczka IDE
Podział bezpieczny dla instrukcji
Zachowuje oryginalną kolejność instrukcji Czasami
Brak przesyłania zrzutu na serwer
Działa mimo limitów przesyłania na hostingu Zależy
Zachowuje procedury składowane/wyzwalacze nienaruszone przy zmianie DELIMITER Tylko jeśli skrypt obsługuje DELIMITER
Akceptuje skompresowany zrzut .sql.gz bezpośrednio Potwierdzone na sqlsplit.com; zwykły skrypt zazwyczaj wymaga wcześniejszej dekompresji

SQL Dump Splitter pomaga, gdy import kończy się błędem z powodu rozmiaru pliku - dzieli plik tam, gdzie pozwala na to SQL, dekompresuje spakowany zrzut oraz dba o to, by każdy fragment był bezpieczny dla instrukcji, w tym procedur składowanych.

Zobacz powiązane narzędzia

Osadź to narzędzie

Wklej to na swojej stronie — pozostanie darmowe, a każdy plik nadal zostaje w przeglądarce odwiedzającego, nie u Ciebie ani u nas.