Zaloguj błąd i ostrzeżenie podczas przywracania zrzutu SQL na MySql

2

Jak zalogować błąd i ostrzeżenie podczas przywracania zrzutu SQL na MySql? Oto kroki, które wykonujemy.

mysql> CREATE DATABASE dbname;

mysql> USE dbname;

mysql> SOURCE dbdumpname.sql

Aha
źródło

Odpowiedzi:

2

Aby przekierować błędy i ostrzeżenia MySQL do pliku dziennika, przywróć zrzut SQL z bash, a nie z monitu MySQL.

mysql -u root -p db_name < dumpfilename.sql > /var/tmp/mysqldump.log 2>&1

Jeśli chcesz wyłączyć sprawdzanie klucza obcego, utwórz skrypt powłoki o nazwie mysql-import.shi umieść w nim następującą zawartość:

#!/bin/bash

mysql -u root -p'password' -h hostname db_name << EOF

CREATE DATABASE dbname;
USE dbname;
SET foreign_key_checks=0;
SOURCE dbdumpname.sql;

EOF

Następnie, chmod +x mysql-import.shaby skrypt był wykonywalny i uruchom go jako:

./mysql-import.sh > /var/log/mysqldump.log 2>&1

Ten skrypt uruchomi kod, który był uruchomiony w MySQL, ale z możliwością przekierowania danych wyjściowych do pliku dziennika, ponieważ można go wywołać z powłoki.

Sachin Divekar
źródło
Ok Jak mogę ustawić Foreignkey_checks = 0 za pomocą polecenia restore.
Aha,
@Arun Nie otrzymuję twojego pytania.
Sachin Divekar,
Podczas przywracania zrzutu istnieje możliwość wyjątku ze względu na Foreignkey_checks. Robimy to samo, co następuje ..mysql> CREATE DATABASE dbname; mysql> USE dbname; mysql> set Foreign_key_checks = 0; mysql> SOURCE dbdumpname.sql; Jak mogę to zrobić za pomocą mysql -u root -p nazwa_bazy_danych <dumpfilename.sql> /var/tmp/mysqldump.log 2> i 1
Aha
@Arun Zaktualizowałem odpowiedź. Sprawdź, czy działa.
Sachin Divekar,
0

Klient mysql oferuje przydatną --tee <tofile>opcję. Włącz ją przy uruchamianiu lub interaktywnie w wierszu polecenia.

mysql> tee file.log
Logging to file 'file.log'
mysql> \W
Show warnings enabled.
mysql> use database;
mysql> source dump.sql;

Zwróć uwagę na opis w dokumentach

Wszystkie dane wyświetlane na ekranie są dołączane do danego pliku. [..] Funkcja tee działa tylko w trybie interaktywnym.

wbob
źródło