包含数据对象和数据
mysqldump -hhostname -uusername -ppassword databasename > /home/justin/databasename.sql
只有数据库表结构
mysqldump -hhostname -uusername -ppassword -d databasename > /home/justin/databasename.sql
1、查询数据库中的存储过程和函数
方法一:
select `name` from mysql.proc where db = 'databasename' and `type` = 'PROCEDURE'; -- 存储过程 select `name` from mysql.proc where db = 'databasename' and `type` = 'FUNCTION'; -- 函数
方法二:
show procedure status; show function status;
2、mysql导出存储过程及函数
mysqldump -hhostname -uusername -ppassword -ntd -R databasename > /home/justin/prorandfunc.sql
-d 结构(--no-data:不导出任何数据,只导出数据库表结构) -t 数据(--no-create-info:只导出数据,而不添加CREATE TABLE 语句) -n (--no-create-db:只导出数据,而不添加CREATE DATABASE 语句) -R (--routines:导出存储过程以及自定义函数) -E (--events:导出事件) --triggers (默认导出触发器,使用--skip-triggers屏蔽导出) -B (--databases:导出数据库列表,单个库时可省略) --tables 表列表(单个表时可省略) ①同时导出结构以及数据时可同时省略-d和-t ②同时 不 导出结构和数据可使用-ntd ③只导出存储过程和函数可使用-R -ntd ④导出所有(结构&数据&存储过程&函数&事件&触发器)使用-R -E(相当于①,省略了-d -t;触发器默认导出) ⑤只导出结构&函数&事件&触发器使用 -R -E -d
1、首先建空数据库
mysql>create database test;
2、导入数据库
方法一:
(1)选择数据库
mysql>use test;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/justin/test.sql;
方法二:
mysql -hhostname -uusername -ppassword abc < /home/justin/test.sql;