Za każdym razem, gdy próbuję zrobić, pojawia mysqldump
się następujący błąd:
$> mysqldump --single-transaction --host host -u user -p db > db.sql
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM,
'$."number-of-buckets-specified"') FROM
information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'db' AND
TABLE_NAME = 'Absence';':
Unknown table 'COLUMN_STATISTICS' in information_schema (1109)
Wynikiem jest zrzut, który nie jest kompletny. Dziwne jest to, że to samo polecenie, wykonane z innego hosta, działa bez zgłaszania błędów. Czy ktoś doświadczył tego samego problemu?
Korzystam z klienta mysql 8.0
i próbuję uzyskać dostęp do 5-7
serwera mysql - może to jest powód?
--column-statistics=0
argument do listy wygenerowanych argumentów w polu u dołu wyskakującego okienka.Dla osób korzystających z MySQL Workbench na ekranie eksportu danych znajduje się przycisk „Opcje zaawansowane”. Opcję „Użyj statystyki kolumny” można wyłączyć, ustawiając na 0.
Nie potwierdziłem, ale zasugerowano, że następujące informacje są również prawdziwe: w wersji 8.0.14 brakuje. W wersji 8.0.16 robi to domyślnie.
źródło
--column-statistics=0
polecenie eksportu.Cały dzień szukałem rozwiązania i śpiewałem tutaj, aby podzielić się moim.
Tak, prawdopodobnie ten błąd wynika z różnicy wersji.
Wystarczy pobrać archiwum ZIP MySQL 5.7 tutaj: https://dev.mysql.com/downloads/mysql/ i rozpakować, a następnie użyć pliku mysqldump.exe.
Jeśli używasz MySQL Workbench, musisz ustawić ścieżkę do pobranego narzędzia mysqldump, przechodząc do Edycja -> Preferencje -> Administracja (z lewego panelu).
Mam nadzieję że to pomoże.
źródło
C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump.exe
Aby ułatwić odpowiedź , możesz zmienić nazwę
mysqldump
, zrobić skrypt powłoki na jego miejscu i wywołać przemianowaną nazwęmysqldump
z--column-statistics=0
argumentem. Na przykład:Zmień nazwę mysqldump:
Zapisz następujący skrypt powłoki na swoim miejscu:
źródło
Najłatwiejsze obejście
Podczas korzystania z Mysql Workbench 8.0
Powodzenia!
źródło
W systemie macOS potrzebna jest starsza wersja (8.0.13), aby wyświetlić „statystyki kolumn”, ponieważ testuję wersje 8.0.14 i 8.0.15 i oba nie pokazują „statystyk kolumn”.
Tak więc, aby dostosować „statystykę kolumn”, użyj wersji 8.0.13 https://downloads.mysql.com/archives/get/file/mysql-workbench-community-8.0.13-macos-x86_64.dmg
źródło
W mojej sytuacji używam Mac-OS. Nawiasem mówiąc,
[mysqldump] column-statistics=0
wmy.cnf
pliku były pola umieszczone w/usr/local/etc
katalogu. Usunięcie tego pola rozwiązało problem. (nie: wersja mysql to 5.7 i jest instalowana przez homebrew).źródło
Miałem również ten sam problem, występuje, gdy scalam wiele tabel danych z istniejącym schematem z innego schematu i eksportuję scalone dane do samodzielnego pliku skryptu. Próbowałem zmienić statystyki kolumn = 0, ale wynik był następujący,
Więc nie pomogłem. Analizuję dziennik MySQL, który znalazłem
narzeka na rozmiar innodb_buffer_pool_size. Zrobiłem to do 24 MB. To działa.
źródło
Używam XAMPP i MySQL Workbench ostrzega przed niedopasowaniem wersji. Ustawiam MySQL Workbench, aby wskazywał na mysql.exe i mysqldump.exe XAMPP.
Przejdź do Edycja -> Preferencje -> Administracja i ustaw ścieżkę dla każdego.
Działa to przynajmniej w wersji 8.0.14. Tak więc dla innych możesz uniknąć używania dołączonej wersji mysql i mysqldump.
źródło