MySQL学习笔记20:数据备份与还原
数据很重要,这点用脚趾头想都知道,为了保证数据的安全,因此需要定期对数据备份
下面来写一点关于数据备份与还原相关的笔记
数据备份
使用mysqldump命令备份一个数据库
mysqldump -u username -p dbname table1 table2...>BackupName.sql
其中,dbname表示数据库名称,table1和table2表示表的名称,没有该参数则备份整个数据库
BackupName.sql参数表示备份文件的名称,文件名前面可以加上一个绝对路径
需要注意的是,备份的时候只备份数据库中的表,如果要还原则必须还原在已有数据库中
tips:通常情况下备份文件的后缀名为.sql,当然也可以是.txt等,只不过不专业
使用mysqldump命令备份多个数据库
mysqldump -u username -p --databases dbname1 dbname2...>BackupName.sql
此处--databases代表备份多个数据库的意思,后面接数据库名
此外还能备份所有数据库
使用mysqldump命令备份所有数据库
mysqldump -u username -p --all-databases>BackupName.sql
直接复制整个数据库目录
直接复制数据库目录是最简单的备份方法,但并非最好
使用这种方法时为了避免数据变化需要暂时停止数据库服务,但实际中不允许
而且,这种方法对InnoDB存储引擎的表不适用,对于MyISAM存储引擎的表比较方便
数据还原
使用mysql命令还原
mysql -u root -p[dbname]<backup.sql
[dbname]是可选的,如果使用--all-databases参数备份整个数据库而不是单独备份表
那么便可以不使用dbname参数
直接复制到数据库目录
使用这种方式必须保证数据库的主版本号一致
通常对MyISAM比较有效,对InnoDB不适用