查询并导出、导入mysql中的存储过程(转http://www.2cto.com/database/201108/98573.html)

Coordinator
Nov 7, 2011 at 3:34 PM
2011-08-02 10:11:05     我来说两句 
收藏    我要投稿    [字体: ]

 

一、查询数据库中的存储过程

方法一(查看指定的存储过程内容):

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

 

方法二(查看所有的存储过程):

         show procedure status;

 

二、MySQL的存储过程导出和导入,具体用法为:

 1.导出

[root@localhost bin]# mysqldump -uroot -p -hlocalhost -P3306 -n -d -t -R DBName > procedure_name.sql

参数说明:

-n:   --no-create-db

-d:   --no-data

-t:   --no-create-info

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

 

    Mysqldump是客户端工具用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建活装载表的SQL语句:

主要参数介绍:

1.连接选项

  -u,--user=name

  -p,--password=name

  -h,--host=name

  -P,--port=#

2.输出内容选项

 --add-drop-database

 --add-drop-table

 -n;--no-create-db

 -d;--no-data

 -t;--no-create-info

3.输出格式选项

--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(转义字符)

4.字符集选项

--default--character-set=xx

5.其他选项

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

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

2.导入

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

本文出自 “从cisco走向linux” 博客