在linux中备份文件我们用得最多的就是tar命令了,下面们一起来看结合ssh+tar实现文件备份并且把备份的文件下载到本地,
现在虚拟主机大部分都有自动备份功能,不过有时候不能全靠主机不是,如果主机被黑了,连备份文件都没法恢复,那就哭惨了,所以说靠人不如靠自己。今天 111cn.net 教大家如何给自己的网站备份,这里用 Hostgator 这个国外空间来讲了。
备份一般分为两部分,一部分是文件备份,另外一部分是数据库备份。这里先介绍如何备份文件,想看数据库备份的请看:如何通过SSH的Mysqldump命令备份数据库
先说文件备份吧,一般虚拟主机都带文件管理系统,就拿 Hostgator 来说,里边有个 File Manager,虽然我们可以通过他来压缩文件夹,然后用 FTP 工具来达成我们本地备份的目的,但是如果你的网站文件过多,会造成假死的现象。所以 111cn.net 还是不怎么推荐用 CPANEL 里边的文件管理系统来备份的。这里讲的是用 SSH 命令打包文件。
首先确保你的空间已经开通 SSH 功能,如果没有请联系空间商将此功能打开,然后通过 Putty 连接我们的空间。输入用户名密码,Putty 就会打开一个类似于 CMD 命令行的窗口。然后我们用 TAR 或者 ZIP 命令来打包我们的网站文件夹。
用 SSH 压缩指定文件夹的方法:
TAR 压缩命令代码如下复制代码
tar -czvf 111cn.net.tar ./111cn.net.net
111cn.net.tar 是压缩文件名
./111cn.net.net 是需要压缩的目标文件夹
ZIP 压缩命令代码如下复制代码
zip -r 111cn.net.zip 111cn.net.net
111cn.net.tar 是压缩文件名
./111cn.net.net 是需要压缩的目标文件夹
用SSH解压压缩包的方法:代码如下复制代码
Tar 解压 Tar 压缩包命令
tar xvfz 111cn.net.tar
unzip 解压 zip 压缩包命令
unzip 111cn.net.zip
OK了,这时候,你的数据库已经备份完毕,直接用FTP工具拖到本机备份吧,linux中通过SSH的Tar压缩命令备份文件linux操作系统》(https://www.unjs.com)。
例,看个SSH的Mysqldump命令备份数据库
首先确保你的空间已经开通 SSH 功能,如果没有请联系空间商将此功能打开,然后通过 Putty 连接我们的空间。输入用户名密码,Putty 就会打开一个类似于 CMD 命令行的窗口。然后我们用 TAR 或者 ZIP 命令来打包我们的网站文件夹。
备份数据的过程:代码如下复制代码mysqldump -h mysql.forece.net -p mysql_dbname -u mysql_dbuser >bak.sql
这里的mysql.forece.net是您的数据库服务器地址,如果你数据库没有域名的话,那么就直接填写 localhost 也可以,mysql_dbname是您的数据库名称,mysql_dbuser 是您的数据库用户名,bak.sql是你备份的数据库的脚本文件名称(将来可用来恢复数据)。然后回车,提示你输入数据库登陆密码,输入完密码后回车即可,Liunx下输入密码是不回显的,所以你只管输入,注意别错了就行啦!
OK了,这时候,你的数据库已经备份完毕,直接用FTP工具拖到本机备份吧。
导入(恢复)数据的过程:
依然还是在之前SSH的命令行模式下,输入以下命令进入数据库:代码如下复制代码mysql -h mysql.forece.net -p mysql_dbname -u mysql_dbuser
然后回车,提示你输入数据库登陆密码,输入密码后,回车会出现MySQL操作提示符号,之后输入下面的命令:代码如下复制代码
source bak.sql
注意要先确认bak.sql这个文件在当前目录下哦,没问题后点击 回车,这是就开始恢复数据啦,耐心等待一会儿吧。。。