如何备份MySQL数据库
在MySQL中进行数据备份的方法有两种:
1. mysqlhotcopy
这个命令会在拷贝文件之前会把表锁住,并把数据同步到数据文件中,以避免拷贝到不完整的数据文件,是最安全快捷的备份方法。
命令的使用方法是:
mysqlhotcopy -u root -p<rootpass> db1 db2 … dbn <output_dir>
如果需要备份全部数据库,可以加上–regexp=”.*”参数。
Mysqlhotcopy命令可自动完成数据锁定工作,备份时不用关闭服务器。它还可以刷新日志,使备份文件和日志文件的检查点能保持同步。
2. mysqldump
这个命令是用来把数据库倒成sql文件的,是非常古老的命令了。
命令的使用方法是:
mysqldump -u root -p<rootpass> –hex-blob db1 > db1.sql
加上–hex-blob参数以后,blob数据会被类似BASE64的方法转换为文本来存储在sql文件中,就不会导致sql文件格式问题了。经过测试,通过这种方法备份的blob数据再重新恢复回去能够完全正确。
如果要备份所有的数据库,可以加上–all-databases参数。
用mysqldump命令还可直接把数据库转移到另外一台服务器上,不用生成备份文件。重复执行可定期更新远程数据库。
% mysqladmin -h remote_host create testdb
% mysqldump –opt testdb | mysql -h remote_host testdb
另外还可通过ssh远程调用服务器上的程序,如:
% ssh remote_host mysqladmin create testdb
% mysqldump –opt testdb | ssh remote_host mysql testdb
2种数据库备份方式的优缺点:
使用mysqlhotcopy等程序备份速度快,因为它直接对系统文件进行操作,但是需人为协调数据库数据的备份前后一致性。
mysqldump程序备份数据库较慢,但它生成的文本文件便于移植。
对于没有使用InnoDB的数据库,用mysqlhotcopy是最好的方法;否则必须采用mysqldump。不论如何,直接拷贝文件的备份方法应该被废弃了。
相关文章
Mysql使用concat函数实现关键字模糊查询功能(列表数据过滤含前后端代码)
在我们的平时开发中经常会遇到根据条件过滤列表数据项,今天在做自己项目的时候就遇到了这个问题,正好借着这个机会分享我的思路以及相关的代码,对Mysql使用concat函数实现关键字模糊查询功能感兴趣的朋友一起看看吧2023-02-02mysql-5.7.21-winx64免安装版安装--Windows 教程详解
这篇文章主要介绍了mysql-5.7.21-winx64免安装版安装--Windows 教程详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下2018-09-09Ubuntu18.04 安装mysql8.0.11的图文教程
本文通过图文并茂的形式给大家介绍了Ubuntu18.04 安装mysql8.0.11的方法,非常不错,具有一定的参考借鉴价值,需要的的朋友参考下吧2018-07-07IDEA配置连接MYSQL数据库遇到Failed这个问题解决
这篇文章主要介绍了IDEA配置连接MYSQL数据库遇到Failed这个问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-11-11
最新评论