sql >> Databasteknik >  >> RDS >> Mysql

mysqldump - Exportstruktur endast utan autoinkrement

Du kan göra så här:

mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*\b//' > <filename>.sql

Som nämnt av andra, Om du vill sed för att fungera korrekt, lägg till g (för g lobal replacement) parameter så här:

mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*\b//g' > <filename>.sql

(detta fungerar bara om du har GUI-verktyg installerade:mysqldump --skip-auto-increment )

Ny UPPDATERING tack vare kommentarer.

\b är värdelös och ibland bryter kommandot. Se detta SO-ämnet för förklaringar. Så det optimerade svaret skulle vara:

mysqldump -u root -p -h <db-host> --opt <db-name> -d --single-transaction | sed 's/ AUTO_INCREMENT=[0-9]*//g' > <filename>.sql


  1. Inner Join laravel 5.2

  2. Jämföra objekt efter värde. Del 6:Struktur Jämställdhetsimplementering

  3. Finns det ett MySQL-alternativ/-funktion för att spåra historik över ändringar i poster?

  4. InnoDB-tabeller finns i MySQL men säger att de inte existerar efter att ha kopierat databasen till ny server