mysqldump 备份数据库文件

mysql 备份数据库的方式我常用的有两种,一种是通过Navicat 来备份,一种是通过mysqldump 命令,下面具体说一下这两种方式分别怎么操作

一、Navicate 备份数据库

1、执行备份操作

mysqldump 备份数据库文件

2、如下图可以看到备份的文件

mysqldump 备份数据库文件

 

3、还原备份

mysqldump 备份数据库文件

二、mysqldump 备份

使用mysqldump  需要在命令行中执行

1、备份整个数据库,以数据库 test 为例

备份多个数据库,数据库之间用逗号分隔

mysqldump -u root -h host -p --databases dbname1, dbname2 > databasebak.sql

mysqldump -u root -h localhost -p test > d:/test.sql  如下图:

mysqldump 备份数据库文件

如果在备份的过程中出现如下错误:

mysqldump: Couldn't execute 'SELECT COLUMN_NAME,                       JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"')                FROM information_schema.COLUMN_STATISTICS                WHERE SCHEMA_NAME = 'shareconditioner' AND TABLE_NAME = 'calendar';': Unknown table 'column_statistics' in information_schema (1109)

在前面加上“mysqldump --column-statistics=0 -u root -h 10....-p databasename > d:/test.sql”

因为新版的mysqldump默认启用了一个新标志,通过 --column-statistics=0 来禁用他

2、备份某个表

     备份 test数据库中的cms_article 表

    mysqldump -u root -h host -p dbname tablename1, tablename2 > backdb.sql

mysqldump 备份数据库文件

3、mysqldump 按条件备份

  mysqldump -u root -h host -p dbname tablename1 --where=("id>10") > back.sql

4、source 导入sql 文件

(1)连接到Mysql

     mysql -uroot -p

(2)切换到对应的数据库

      use test

(3)执行source 命令

      mysql> source d:/test.sql;