Mysql

僅轉儲 MySQL 中的儲存過程

  • July 31, 2021

我只需要轉儲儲存過程:沒有數據,沒有表創建。如何使用 mysqldump 執行此操作?

這應該為你做:

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.

警告

最好不要將儲存過程從數據庫中分離出來,以便在數據庫中創建特定的儲存過程。觸發器也是如此。這將是可取的:

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

引用自:https://dba.stackexchange.com/questions/4086