sql >> Databasteknik >  >> RDS >> Mysql

Ta bort DEFINER-satsen från MySQL Dumps

Jag tror inte att det finns något sätt att ignorera att lägga till DEFINER s till soptippen. Men det finns sätt att ta bort dem efter att dumpfilen har skapats.

  1. Öppna dumpfilen i en textredigerare och byt ut alla förekomster av [email protected] med en tom sträng ""

  2. Redigera dumpen (eller rör utdata) med perl :

    perl -p -i.bak -e "s/DEFINER=\`\w.*\`@\`\d[0-3].*[0-3]\`//g" mydatabase.sql
    
  3. Pipera utdata genom sed :

    mysqldump ... | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > triggers_backup.sql
    


  1. Hur LocalTimeStamp() fungerar i PostgreSQL

  2. Vilken är den idealiska datatypen att använda när du lagrar latitud/longitud i en MySQL-databas?

  3. BESTÄLL EFTER alfabet först och följ sedan efter nummer

  4. Väljer poster efter datum ->=NOW(), MySQL