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

所属分类: 数据库 / Mysql 阅读数: 242
收藏 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;将指定的备份文件还原到当前数据库

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

简单了解标准SQL的update语句三种用法

这篇文章主要介绍了简单了解标准SQL的update语句三种用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL5.7.23解压版安装教程图文详解

这篇文章主要介绍了MySQL5.7.23解压版安装教程图文详解,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python 连接数据库mysql解压版安装配置及遇到问题

今天学习python连接数据库,就想安装一下mysql数据库,没想到小小的数据库也遇到了不少挫折,所以我就把自己的安装过程以及问题写出来分享给大家,需要的朋友可以参考下
收藏 0 赞 0 分享

为什么说MySQL单表数据不要超过500万行

在本篇文章里小编给大家整理了一篇关于为什么说MySQL单表数据不要超过500万行的相关内容,有兴趣的朋友们阅读下吧。
收藏 0 赞 0 分享

基于python的mysql复制工具详解

python-mysql-replication 是基于python实现的 MySQL复制协议工具,我们可以用它来解析binlog 获取日志的insert,update,delete等事件 ,并基于此做其他业务需求。这篇文章主要介绍了基于python的mysql复制工具,需要的朋
收藏 0 赞 0 分享

mysql语句查询用户权限过程详解

这篇文章主要介绍了mysql语句查询用户权限过程详解,授予用户的权限可能分全局层级权限、数据库层级权限、表层级别权限、列层级别权限、子程序层级权限。,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL创建数据表并建立主外键关系详解

这篇文章主要介绍了MySQL创建数据表并建立主外键关系详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL表中添加时间戳的几种方法

这篇文章主要介绍了MySQL表中添加时间戳的几种方法,有张表的数据需要用同步工具同步至其他库,需要 update_time 时间戳字段 来做增量同步,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL如何实现负载均衡功能

这篇文章主要介绍了MySQL如何实现负载均衡功能,学习过数据库的朋友们都会知道MySQL,那么如何在MySQL下实现负载均衡功能呢?本文就将为大家细致地介绍一下
收藏 0 赞 0 分享

mysql server 5.5连接不上的解决方法

这篇文章主要为大家详细介绍了mysql server 5.5连接不上的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享
查看更多