在使用mysql数据库时,经常需要备份和恢复数据库,通过导出sql文件备份和直接执行sql文件恢复是非常便捷的方式。本篇文章主要介绍如何对mysql数据库通过cmd命令导出和导入sql文件。
导出
一、导出数据库
包含数据对象和数据
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)选择数据库
在原版的基础上做了一下修正:增加1st在线支付功能与论坛用户数据结合,vip也可与论坛相关,增加互动性vip会员的全面修正评论没有提交正文的问题特价商品的调用连接问题删掉了2个木马文件去掉了一个后门补了SQL注入补了一个过滤漏洞浮动价不能删除的问题不能够搜索问题收藏时放入购物车时出错点放入购物车弹出2个窗口修正定单不能删除问题VIP出错问题主题添加问题商家注册页导航连接问题添加了导航FLASH源文
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;
相关推荐:
php 用命令行导出和导入MySQL数据库,命令行mysql









