对MySQL数据库虚拟主机操作熟练的朋友都知道,MYSQL备份PHP脚本程序只适合没有MySQL Shell权限的虚拟主机用户,如果遇到有MySQL Shell权限的虚拟主机用户该如何备份与还原呢?今天小编为大家解读虚拟主机MySQL数据库更为通用的备份与还原方法。
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工具的参数功能相当多,还需要好好研究下。
1.3、使用数据备份软件:多备份
多备份是深圳木浪科技旗下的全球化数据保护服务品牌,由国际顶级投资机构IDG和极客帮联合投资。我们提供数据加密、备份保护和恢复迁移服务; 支持将数据保护在本地设备或云端存储之上。
对比传统备份软件,我们提供多种灵活的部署和使用方式,客户既可以在单台设备上使用多备份客户端保护数据;也可以在web控制台集中管理名下的所有设备数据,最多可同时管理数万设备的数据保护工作。多备份支持主流数据库MySQL, SQLserver, Oracle;主流文件系统; 支持个人PC、工作站、服务器、小型机,从Linux,Windows到AIX等操作系统;目前多备份已与全球9大云平台厂商,包括阿里云,腾讯云,微软云,金山云,UCloud,七牛,亚马逊云,百度云等进行了深度合作,可保护客户国内外多地的重要数据。
1.首先,登录多备份官网,点击“免费体验”
2.选择“数据库备份”
3.根据提示填写相应的账号信息,然后点击“连接”
此时,如果你的账号没有授权的话,多备份会弹出一个窗口---让亲们对其分配的节点ip进行授权;授权语句都已经写好,只要复制到数据库的控制面板就可以了
然后授权成功之后就会跳转到另一个页面
在这里你可以修改备份频率及存储位置。保留份数最多可保存60份历史记录
5然后,数据库就开始备份了。
7.备份成功后,系统会自动以邮件的形式提醒你哟!
2、关于还原
2.1、对于直接拷贝数据库文件的方法,把相应文件覆盖回数据目录即可还原。
2.2、对于DUMP出来的.SQL文件,可以在MYSQL命令行中输入:
use target_database;选择要还原的数据库,最好新建一个空的 \. path:/xxx.sql;将指定的备份文件还原到当前数据库。