首页  >  文章  >  数据库  >  mysql怎么导出单个存储过程?

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

青灯夜游
青灯夜游原创
2020-10-12 11:13:072690浏览

在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怎么导出单个存储过程?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn