sql >> Database teknologi >  >> RDS >> Mysql

Fjern DEFINER-klausulen fra MySQL Dumps

Jeg tror ikke, der er en måde at ignorere tilføjelse af DEFINER s til lossepladsen. Men der er måder at fjerne dem på, efter at dumpfilen er oprettet.

  1. Åbn dump-filen i en teksteditor, og erstat alle forekomster af [email protected] med en tom streng ""

  2. Rediger dumpet (eller rør outputtet) vha. perl :

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

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


  1. MySQL - Et til en forhold?

  2. Få rækkeposition i MYSQL-forespørgsel

  3. Hvordan forhindrer du SQL-injektion i LAMP-applikationer?

  4. HAS_DBACCESS() – Find ud af, om en bruger kan få adgang til en database i SQL Server