使用mysqldump通过程序导出数据库

问题描述 投票:0回答:3

使用 mysqldump 导出数据库时,如下所示:

mysqldump -u mysqluser -p mysqlpassword databasename > /tmp/databasename.sql

此命令是否还会导出使用以下命令列出的存储过程:

SHOW PROCEDURE STATUS WHERE db = 'databasename';

如果没有,如何从 Linux 终端使用 mysqldump 导出 mysql 数据库及其关联的存储过程?另请注意,我不能使用 phpMyAdmin 来实现此目的。

mysql database stored-procedures procedure dump
3个回答
2
投票

试试这个。

mysqldump -u mysqluser -p mysqlpassword --routines databasename > /tmp/databasename.sql

请参阅此链接:http://www.ducea.com/2007/07/25/dumping-mysql-stored-procedures-functions-and-triggers/


0
投票

我们可以使用 -R 标志作为 --routines 标志的替代品,同时按照其他答案的建议进行转储。

mysqldump -u mysqluser -p mysqlpassword -R databasename > /tmp/databasename.sql

0
投票

例如,使用

-R
--routines
,您可以将
apple
数据库的表的架构和数据及其过程和函数导出到
backup.sql
,如下所示。 *不可能只导出过程或函数,我的回答解释了如何导出数据库表的架构和数据:

mysqldump -u john -p -R apple > backup.sql

或者:

mysqldump -u john -p --routines apple > backup.sql

并且使用

-B
(
--databases
) 和
-R
(
--routines
),您可以将
apple
orange
数据库的架构和数据及其过程和函数导出到
backup.sql
,如下所示。 *我的回答解释了如何导出多个数据库的模式和数据:

mysqldump -u john -p -B -R apple orange > backup.sql

并且使用

-A
(
--all-databases
)和
-R
(
--routines
),您可以将所有数据库的模式和数据及其所有过程和功能导出到
backup.sql
,如下所示。 *我的回答解释了如何导出所有数据库的模式和数据:

mysqldump -u john -p -A -R > backup.sql
© www.soinside.com 2019 - 2024. All rights reserved.