数据库备份与日志备份是数据库维护的日常工作,备份的目的是在于当数据库出现故障或者遭到破坏时可以根据备份的数据库及事务日志文件还原到最近的时间点将损失降到最低点。
数据库的备份和还原可以使用命令行,也可以直接使用图形化工具比如 Navicat,下面介绍使用命令行的方式。
备份MySQL数据库的命令:
mysqldump -u用户名 -p密码 数据库名称 > 指定备份生成的SQL文件存放路径和名称 # 示例: mysqldump -uroot -p123456 db_test > c://backupfile.sql
可以直接在安装有数据库的服务器上执行上面命令即可。
比如我们在本地 window 系统上执行备份命令(注意,需要使用管理员身份使用CMD命令行才行,否则会提示拒绝访问):
将会直接生成一个 SQL 文件,该文件存放着指定数据库中所有表的创建和数据插入语句:
还原MySQL数据库的命令:
mysql -u用户名 -p密码 数据库名称 < 备份文件的路径和文件名 # 示例: mysql -uroot -p123456 db_test < c://backupfile.sql
在还原数据库前,必须得先主动创建该数据库,因为备份的 SQL 文件中并没有创建数据库的语句,所以我们得先主动创建好自定义的数据库后,才能还原。
实际上,备份就是将备份文件中的插入表和插入数据语句往你指定的数据库执行。
还原数据库也可以先创建数据库,然后选择数据,最后执行:“source 文件名” 命令。实际上也就是指定在选择的数据库中执行 SQL 文件中的命令。