it-swarm-eu.dev

Speichern Sie nur die gespeicherten Prozeduren in MySQL

Ich muss nur die gespeicherten Prozeduren sichern: keine Daten, keine Tabellenerstellung. Wie kann ich das mit mysqldump machen?

32
nakhli

Dies sollte es für Sie tun:

mysqldump -h... -u... -p... -n -d -t --routines --triggers --all-databases > MySQLStoredProc.sql

  -n, --no-create-db     Suppress the CREATE DATABASE ... IF EXISTS statement 
                         that normally is output for each dumped database if
                         --all-databases or --databases is given.
  -d, --no-data          No row information.
  --triggers             Dump triggers for each dumped table.
                         (Defaults to on; use --skip-triggers to disable.)
  -R, --routines         Dump stored routines (functions and procedures).
  -t, --no-create-info   Do not write CREATE TABLE statements that create each 
                         dumped table.

VORBEHALT

Es wäre viel besser, die gespeicherten Prozeduren nicht von der Datenbank zu trennen, damit bestimmte gespeicherte Prozeduren in der Datenbank erstellt werden, für die sie bestimmt waren. Gleiches gilt für Trigger. Dies wäre vorzuziehen:

mysqldump -h... -u... -p... -d --routines --triggers --all-databases > MySQLStoredProc.sql
37
RolandoMySQLDBA