欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mysql怎么导出单个存储过程?

程序员文章站 2022-03-06 16:16:21
...

在mysql中,可以使用“mysqldump -uroot -p -hlocalhost -P3306 -n -d -t -R DBName > procedurename.sql”语句来导出单个存储过程。

mysql怎么导出单个存储过程?

(推荐教程:mysql视频教程

查看指定的存储过程内容:

select body from mysql.proc where name='procedurename';

查看所有的存储过程:

show procedure status;

导出MySQL的存储过程

mysqldump -uroot -p -hlocalhost -P3306 -n -d -t -R DBName > procedurename.sql

参数说明:

  • -n: --no-create-db

  • -d: --no-data

  • -t: --no-create-info

  • -R: --routines Dump stored routines (functions and procedures)

主要参数介绍:

字符集选项

  • --default--character-set=xx

连接选项

  • -u,--user=name

  • -p,--password=name

  • -h,--host=name

  • -P,--port=#

输出内容选项

  • --add-drop-database

  • --add-drop-table

  • -n;--no-create-db

  • -d;--no-data

  • -t;--no-create-info

输出格式选项

  • --compact

  • -c --complete-insert

  • -T(指定数据表中的数据备份为单纯的数据文件和建表SQL两个文件)

注xx.sql建表文件是以linux的root用户创建,

而xx.txt文件则是一linux的mysql用户创建,

因此这两个文件的存放路径一定要保证mysql用户有读写创建文件的权限。

  • --fields-terminated-by=name(域分隔符)

  • --fields-enclosed-by=name(域引用符)

  • --fields-optionally-enclosed-by=name(域引用可选字符)

  • --fields-escaped-by=name(转义字符)

其他

  • -F --flush-logs(备份前刷新日志)

  • -l --lock-tables(给所有的表加读锁)

导入MySQL的存储过程

mysql -hhostname -uusername - ppassword databasename < backupfile.sql

以上就是mysql怎么导出单个存储过程?的详细内容,更多请关注其它相关文章!

相关标签: mysql 存储过程