Wyeksportuj plik CSV z wiersza polecenia MySQL



Zaktualizowany 2024 kwietnia: Przestań otrzymywać komunikaty o błędach i spowolnij swój system dzięki naszemu narzędziu do optymalizacji. Pobierz teraz na pod tym linkiem
  1. Pobierz i zainstaluj narzędzie do naprawy tutaj.
  2. Pozwól mu przeskanować twój komputer.
  3. Narzędzie będzie wtedy napraw swój komputer.

Gdy dodasz zakupy online do swojej witryny, może ona nie zostać od razu zintegrowana z Twoimi systemami księgowymi lub inwentaryzacyjnymi. Oznacza to, że do czasu skonfigurowania zautomatyzowanego interfejsu konieczne może być ręczne synchronizowanie danych między systemami poprzez eksportowanie danych z witryny MySQL bazy danych w ogólnym formacie CSV, de facto standardowym formacie dla najniższego układu plików, a następnie zaimportować go do swoich systemów księgowych lub magazynowych.

Eksportowanie MySQL do CSV za pomocą phpMyAdmin

Narzędzie phpMyAdmin zapewnia graficzny interfejs do zarządzania bazami danych MySQL. Możesz go użyć do wyeksportowania każdej ze śledzonych baz danych do pliku CSV.

  • Zacznij od połączenia z phpMyAdmin.
  • Następnie kliknij przycisk Bazy danych na górnym pasku.
  • Na liście baz danych kliknij link bazy danych, którą chcesz wyeksportować. W tym przykładzie wybraliśmy bazę danych użytkowników.
  • Następny ekran wyświetla listę tabel w tej bazie danych. Zaznacz pola odpowiadające tabelom, które chcesz wyeksportować.
  • Kliknij przycisk „Eksportuj” na banerze.
  • Pozostaw metodę eksportu bez zmian. Wybierz CSV z rozwijanego menu Format, a następnie kliknij Idź.
  • Pojawi się okno dialogowe z prośbą o określenie lokalizacji pliku CSV.


Aktualizacja z kwietnia 2024 r.:

Za pomocą tego narzędzia możesz teraz zapobiegać problemom z komputerem, na przykład chroniąc przed utratą plików i złośliwym oprogramowaniem. Dodatkowo jest to świetny sposób na optymalizację komputera pod kątem maksymalnej wydajności. Program z łatwością naprawia typowe błędy, które mogą wystąpić w systemach Windows - nie ma potrzeby wielogodzinnego rozwiązywania problemów, gdy masz idealne rozwiązanie na wyciągnięcie ręki:

  • Krok 1: Pobierz narzędzie do naprawy i optymalizacji komputera (Windows 10, 8, 7, XP, Vista - Microsoft Gold Certified).
  • Krok 2: kliknij „Rozpocznij skanowanie”, Aby znaleźć problemy z rejestrem Windows, które mogą powodować problemy z komputerem.
  • Krok 3: kliknij „Naprawić wszystko”, Aby rozwiązać wszystkie problemy.

pobieranie



Z wiersza poleceń MySQL

Jeśli masz tylko dostęp z wiersza poleceń do instancji MySQL i nie masz dostępu do samego serwera (na przykład, jeśli nie jest on zarządzany przez Ciebie, jak w przypadku Amazon RDS), problem jest nieco bardziej delikatny. Kiedy jesteś na serwerze, możesz użyć pól kończących się na „”, aby utworzyć listę oddzieloną przecinkami, interfejs CLI MySQL domyślnie oddziela tabulatorami.

Po prostu wpisz zapytanie z wiersza poleceń i przekaż je do:

  • mysql -u root -e „wybierz * z bazy danych;” > wyjście.tsv
  • Ponieważ dane wyjściowe MySQL są rozdzielane tabulatorami, nazywane są plikami TSV dla „wartości rozdzielanych tabulatorami” i mogą działać w niektórych programach, takich jak arkusze kalkulacyjne, zamiast pliku CSV. Ale to nie jest plik CSV, a przekonwertowanie go na plik CSV jest skomplikowane.

Możesz po prostu zastąpić każdą kartę przecinkiem, co zadziała, ale zakończy się niepowodzeniem, jeśli w danych wejściowych znajdują się przecinki. Jeśli jesteś w 100% pewien, że w twoim pliku TSV nie ma przecinków (sprawdź grep), możesz zastąpić tabulatory sed :

sed „s/\t/,/g” wyjście.tsv > wyjście.csv

Jeśli jednak Twoje dane zawierają przecinki, musisz użyć znacznie dłuższego wyrażenia regularnego:

sed „s/'/\'/;s/\t/\”,\”/g;s/^/\”/;s/$/\”/;s/\n//g” wyjście.tsv > wyjście.csv

Pozwala to poprawnie ominąć pola w cudzysłowach, co rozwiązuje problem przecinków.

Uwaga: znak tabulacji \t nie jest standardem. Nie jest dostępny w systemach MacOS i BSD, co powoduje pomieszanie każdej małej litery „t”, co powoduje, że sed wstawia nieprawidłowe przecinki. Aby rozwiązać ten problem, powinieneś użyć dosłownego znaku tabulacji zamiast \t :

sed „s/ /,/g” wyjście.tsv > wyjście.csv

Jeśli dane wejściowe zawierają tabulatory, nie masz szczęścia i musisz samodzielnie utworzyć plik CSV przy użyciu języka skryptowego.

Importowanie do MySQL

Teraz, gdy nauczyłeś się eksportować kopię zapasową bazy danych MySQL, zobaczymy, jak odwrócić ten proces i zaimportować kopię zapasową do istniejącej bazy danych.

Jak możesz sobie wyobrazić, oprócz polecenia mysqldump używanego do eksportowania istnieje podobne polecenie mysqlimport do importowania.

W większości przypadków importowanie polega po prostu na przekazaniu opcji, które są praktycznie identyczne z poleceniem mysqlimport. Aby zaimportować nasz zapisany plik books.sql, który utworzyliśmy wcześniej, użylibyśmy wielu takich samych flag i dużej części tej samej składni.

$ mysqlimport -u book_admin -p książki_produkcja ~/backup/database/books.sql
Podaj hasło:
Tak jak poprzednio, flagi -u i -p są wymagane do uwierzytelnienia, po których następuje nazwa bazy danych, do której chcemy zaimportować (w tym przypadku użyjemy innej, produktywnej bazy danych), a na końcu w pełni kwalifikowana ścieżka do SQL zrzut zawierający nasze dane importu, ~/backup/database/books.sql. Należy również zauważyć, że mysqlimport nie potrzebuje symboli < lub > (STDIN/STDOUT) używanych z mysqldump.

Wnioski

Deweloperzy są często proszeni o eksport danych z bazy danych MySQL w celu dostarczenia ich klientowi. W większości przypadków, gdy dostępne są narzędzia takie jak phpMyAdmin, dane są eksportowane za pośrednictwem narzędzia internetowego.

Jeśli jednak takie narzędzia nie będą dostępne, programiści najprawdopodobniej zwrócą się ku swoim umiejętnościom programistycznym i zaczną pisać skrypty.

https://stackoverflow.com/questions/356578/how-to-output-mysql-query-results-in-csv-format



Porada eksperta: To narzędzie naprawcze skanuje repozytoria i zastępuje uszkodzone lub brakujące pliki, jeśli żadna z tych metod nie zadziałała. Działa dobrze w większości przypadków, gdy problem jest spowodowany uszkodzeniem systemu. To narzędzie zoptymalizuje również Twój system, aby zmaksymalizować wydajność. Można go pobrać przez Kliknięcie tutaj