ストアドプロシージャのみをダンプする必要があります。データなし、テーブル作成なし。 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