3.MySql备份与还原

一、使用mysqlDump备份

1.备份数据库基本语法

mysqldump -u user -h host -p password dbname[tbname,[tbname...]]>filename.sql

例:

mysqldump -u root -p booksdb>c:\backup\booksdb_20110101.sql
Enter password: **

2.使用mysqldump备份数据库中的某个表

mysqldump -u user -p123  -d booksDB books >c:\backup\books_20110101.sql 

-u user 指定用户名

-p123 指定密码

-d booksDB 只备份表结构,不备份数据。 不指定-d,即备份表结构也备份表数据

--skip-extended-insert 导出多条insert语句

导出部分数据

mysqldump -u用户名 -p密码 数据库名 表名 --where="筛选条件" > 导出文件路径

mysqldump -h10.10.12.54 -P33006 -uroot -p123456 --skip-lock-tables  --set-gtid-purged=off  test_db test_table  --where="code='1524612810604xiaoyuan.wang1150102953'"  > t.sql

3.使用mysqldump备份多个数据库

如果备份多个数据库,需要使用--databases参数,格式如下

mysqldump -u user -h host -p --all --databases>filename.sql

使用--all--databases参数时,不需要指定数据库名称

例:备份服务器中所有的数据库,输入语句如下:

mysqldump -u root -p --all--databases>c:\backup\alldbinMySQL.sql

二、使用mysql命令还原

对于已经备份包含create、insert语句的文件,可以使用mysql命令导入到数据库

mysql -u user -p [dbname]<filename.sql

如果filename.sql文件为mysqldump工具创建的包含创建数据库语句的文件,执行的时候 不需要指定数据库名。

如果已经登录MySQL服务器,还可以使用source命令导入sql文件。语法为:

source filename.sql