您的位置:首页 > 数据库 > MySQL

MySQL数据库备份与恢复

2017-11-26 13:23 169 查看
MySQL数据库备份与恢复

一、数据库备份的方法

1、mysqldump备份工具

语法:

mysqldump -h主机名 -u用户名
-p密码
[options] 数据库名
[table1 table2 table3] >path/filename.sql

如 mysqldump -hlocalhost -uname -p123 --skip-add-drop-table school grade student>e:/my/school1.sql

把school数据库里的grade和student这两个表备份到e盘里的my文件夹里的school1.sql文件中。

mysqldump --help|more 还可以用这个命令查看更多可选的mysqldump命令(这样一行一行的查看,比较方便,或者后面不加“|more”,可以直接查看全部)

还有一些比较常用的命令,如下表

命令

描述

--add-drop-table

导出sql脚本会加上DROP TABLE IF EXISTS语句,默认是打开的,可以用--skip-add-drop-table来取消

--add-locks

该选项会在INSERT语句中捆绑一个LOCK TABLE
和UNLOCK TABLE
语句

好处:防止记录被再次打导入时,其他用户对表进行的操作,默认是打开的

-t或--no-create-info

忽略不写重新创建每个储存表的CREATE TABLE语句

-c或

--complete-insert

在每个INSERT语句的列上加上字段名,在数据库导入另一个数据库时非常有用

-d或--no-data

不写表的任何信息,对于只想转储存表的结构很有用

--where”where-condition”,w”where-condition”

只转储存给定的WHERE条件选择的记录

--opt

该选项是速记,等同于指定:

--add-drop-table

--add-locking

--create-option

--disable-keys-extended-insert

--lock-tables

--quick

--set-charset

2、用sql命令备份

语法:

USE 数据库名

SELECT 字段名1,字段名2.. INTO OUTFILE
‘路径’ FROM 表名;

2、数据库管理工具,如SQLyog(操作简单)

3、直接拷贝数据库文件和相关配置文件(不常用)

二、数据库的恢复

1、source命令恢复

mysql>use test;

mysql>source 脚本路径

2、mysql命令恢复

mysql -h主机名 -u用户名
-p密码
test<脚本路径

3、用sql命令恢复

USE test;

CREATE TABLE 表名(

字段名1 数据类型(),

字段名2 数据类型()

);

LOAD DATA INFILE ‘路径’ INTO TABLE 表名(字段名1,字段名2);

当然,也可以用工具进行恢复。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息