Mysql学习系列 -- 数据库的备份与还原

背景:服务器上经常需要进行数据库的备份以还原,备份经常通过定时任务完成,当数据库出现问题时利用备库进行一个数据库的还原。

本次只是进行数据库备份以及还原命令的学习,具体如下所示

一、数据库备份

数据库的备份命令是mysqldump

1、备份一个数据库:

mysqldump -h localhost -u root -p123456 www > d:\www2018-4-26.sql  #www为数据库名

2、备份MySQL数据库为带删除表的格式

mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。

3、数据库压缩备份
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz
4、备份MySQL数据库某个(些)表
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
5、同时备份多个MySQL数据库
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
6、仅仅备份数据库结构
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
7、备份服务器上所有数据库
mysqldump –all-databases > allbackupfile.sql

8、将数据库转移到新服务器

mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename

二、导入数据库

数据库的导入有三种方式:source命令、mysql、gunzip命令

(1)source 命令

进入mysql数据库控制台,
mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source /home/work/db/bkdb.sql

(2)mysql

mysql -hhostname -uusername -ppassword databasename < backupfile.sql
(3)gunzip
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename

你可能感兴趣的:(MySql)