Możesz to zrobić :
mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*\b//' > <filename>.sql
Jak wspomniano przez innych, jeśli chcesz sed
, aby działa poprawnie, należy dodać g
(na g skroniowe zastępczej) parametru takiego:
mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*\b//g' > <filename>.sql
(ta działa tylko wtedy, gdy zainstalowany GUI Tools: mysqldump --skip-auto-increment
)
Nowa AKTUALIZACJA dzięki komentarzom.
\b
Jest bezużyteczny, a czasem złamie polecenie. Zobacz ten temat SO, aby uzyskać wyjaśnienia. Tak więc zoptymalizowana odpowiedź brzmiałaby:
mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*//g' > <filename>.sql
--no-data
domyślnie pominie wartości auto_increment.