虚拟主机MySQL数据库的备份与还原的方法

所属分类: 数据库 / Mysql 阅读数: 363
收藏 0 赞 0 分享
以前介绍过一个小巧的MYSQL备份PHP脚本程序,不过那适合没有MySQL Shell权限的虚拟主机用户,这里想讲一下更为通用的备份与还原方法,适合有自己主机的朋友。

1、关于备份:我们在使用MySQL中一般都用MyISAM类型的表,这种表是以文件形式保存的文件系统中的;而HEAP类型的表是保存在内存中的,下面的方法是针对MyISAM表的。

1.1、直接拷贝数据库文件。首先不推荐使用这种方法,因为拷贝的数据表是针对特定操作系统(硬件环境)的,移到其他系统中有可能会出问题。其次备份时候要停止MYSQL服务器或者锁定相应的表,否则如果拷贝过程中正好在插入/改写数据库就挂了,不适合需要不间断的服务器。这种方法最大好处是方便快捷,备份时候只要拷贝MYSQL数据目录相应数据库文件夹中的所有文件即可,其中*.frm是描述了表的结构,*.MYD保存了表的数据记录,*.MYI则是表的索引。

1.2、使用MySQLDump工具:利用这个程序可以把数据库导出成SQL语句形式的文本文件,方便移动到不同系统,还原时候会一条条执行文件中的SQL语句即可重建数据库。实际使用时在WINDOWS下CMD里或者LinuxShell输入命令:
mysqldump -u user_name -p database_name --option > path:/xxx.sql;回车
;user_name是用户名
;database_name 是数据库名
;path:/xxx.sql 是保存备份文件的路径与文件名

然后输入密码就会导出数据库到指定PATH下的.sql文件了,要保证用户有足够权限访问相应数据库。--option是备份时可以指定的一些参数,可以参考MYSQL官方文档,常用几个选项:
--opt ——一组常用默认选项,包括--add-drop-table --add-locks --create-options --disable-keys --extended-insert --lock-tables --quick --set-charset
--add-drop-table ——在建立表时候先DROP旧表,适合覆盖数据库
--where——按照条件备份部分记录,例如:--where="id<1000'"
mysqldump工具的参数功能相当多,还需要好好研究下~

2、关于还原
2.1、对于直接拷贝数据库文件的方法,把相应文件覆盖回数据目录即可还原。
2.2、对于DUMP出来的.SQL文件,可以在MYSQL命令行中输入:
use target_database;选择要还原的数据库,最好新建一个空的
\. path:/xxx.sql;将指定的备份文件还原到当前数据库

更多精彩内容其他人还在看

MySQL中按照多字段排序及问题解决

这篇文章主要介绍了MySQL中按照多字段排序及问题解决的方法,非常的实用,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

MySQL外键使用详解

两天有人问mysql中如何加外键,今天抽时间总结一下。mysql中MyISAM和InnoDB存储引擎都支持外键(foreign key),但是MyISAM只能支持语法,却不能实际使用。
收藏 0 赞 0 分享

Mysql中LAST_INSERT_ID()的函数使用详解

从名字可以看出,LAST_INSERT_ID即为最后插入的ID值,有了这个实用的函数,我们可以实现很多问题,下面我们就来深入探讨下。
收藏 0 赞 0 分享

MySql insert插入操作的3个小技巧分享

这篇文章主要介绍了MySql insert插入操作的3个小技巧分享,本文讲解了插入的数据来源自其他表、插入时排除(忽略)重复记录、插入时遇到重复记录做更新操作三个小技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql修改自增长主键int类型为char类型示例

这篇文章主要介绍了mysql修改自增长主键int类型为char类型示例,需要的朋友可以参考下
收藏 0 赞 0 分享

Windows下使用Cygwin编译MySQL客户端

这篇文章主要介绍了Windows下使用Cygwin编译MySQL客户端,本文详细的讲解了编译过程,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL数据库优化推荐的编译安装参数小结

这篇文章主要介绍了MySQL数据库优化推荐的编译安装参数小结,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL之Field‘***’doesn’t have a default value错误解决办法

这篇文章主要介绍了MySQL之Field‘***’doesn’t have a default value错误解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

php连接MySQL的两种方式对比

这篇文章主要介绍了php连接MySQL的两种方式对比,一种是原生的链接方式另外一种是PDO方式,附上示例,推荐给大家,有需要的小伙伴可以参考下
收藏 0 赞 0 分享

Mysql InnoDB删除数据后释放磁盘空间的方法

这篇文章主要介绍了Mysql InnoDB删除数据后释放磁盘空间的方法,Innodb数据库对于已经删除的数据只是标记为删除,并不真正释放所占用的磁盘空间,这就导致InnoDB数据库文件不断增长,本文就讲解释放磁盘空间的方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多