wordpress一键备份bash

还在苦苦寻找那个比较靠谱的wordpress的备份插件不?俗话说使用wordpress插件会大量影响性能,所以能不用插件可以自己备份的尽量自己备份!所以这一次我给大家带来一个脚本方便大家在VPS中能备份wordpress在本地VPS中。现在更新到0.2版本。

不过下载的话还是建议大家使用scp吧备份文件下载下来,一般家庭网络都没有固定公网地址所以没有自动使用FTP等协议上传到某处!

食用指南:

首先在#这边有写明让你输入相关选项,如:#Please enter your sql username,hostname,password in dbusername dbhost dbpassword! 下面会有三个相关选项请在=后后面写入你的数据库用户名、主机、密码并且使用””将输入的字符包起来!一共9个选项其中有两个选项代表临时文件存储位置(可随意填写会自动创建和删除)和最后tar文件存储位置!(必须全部填写否则无法执行)
注意:0.2版本已经更新详细请往0.2版本看起。

选择好选项以后就可以执行脚本进行备份了,此脚本有日志功能,在/var/log/wordpressback.log中写明备份的详细情况,如果有错误也会报错,根据错误提示分析哪一步做错了。也可以反馈留言在这里!

如何进行自动定期进行备份?

使用Linux自带的cron即可!不会使用?很方便,打开/etc/crontab文件,里面会有相关指南,有分钟、小时、天(每个月第几天)、月、周。根据自己需要选择日期,如果比如每周6半夜1点备份就是:* 1 * * 6即可,后面的两个选项则为执行的用户和相关命令,命令使用bash + 脚本名的位置即可!
对了还有最重要的别忘了在PATH中添加执行用户的环境变量?不知道环境变量有哪些?使用env | grep PATH 将PATH的内容覆盖到crontab文件中即可。随后执行systemctl restart crond即会自动更新

FAQ:

Q1:此脚本会备份哪些文件?
A:脚本会进行备份wordpress最重要的数据库(整个库中的所有表都会备份)和wp-cotent文件夹,顺便还会进行备份.htaccess文件(隐藏文件在wordpress根目录)以及wp-config.php(对于新手可能不知道这个是总配置文件,也在wordpress根目录)并进行打包压缩为:你指定的文件路径下wordpressback+备份日期.tar.gz格式。

Q2:日志文件是以什么格式进行显示?
A:关于日志文件,每次执行备份都会写明日期和几点几分几秒进行备份的,而下面就是备份的结果。方便大家排错!

Q3:使用cron自动进行执行但是发现日志有写明:mysqldump command not found等字样说明怎么办?
A:说明你没有在crontab的配置文件中将执行脚本用户的环境变量(PATH)复制进去!请看上面:如何进行自动定期进行备份。

Q4:如果我填错选项怎么办?
A:填错然后改回来就行了,不必过分担心。填错的话请看日志文件即可。而且每个选项都有相应说明!
注意:如果使用0.2版本的情况可以看下面!

Q5:有问题需要联系怎么办?
A:可以直接在下面留言或者发邮件到:callcookiesinn@gmail.com

下载&已知BUG:

0.1版本:下载点击这里
已知BUG:我在打包的时候使用的tar添加了使用绝对路径,所以在解压缩的时候请不要添加-P选项否则会有覆盖文件的可能!解压之后可能会有警告信息,没关系的只是去除了绝对路径的”/”不过解压后的路径会在你当前解压的地点上添加你当时填写最终放置的路径的文件夹。比如你当时填写将压缩后的备份文件放在/etc/backup那么会在你解压路径添加两个文件夹:/解压的目录/etc/backup。我想我应该说详细了吧?不懂也没关系只要解压不加-P选项即可到时候你会懂得!

0.2版本:下载点击这里
更新的内容:为了更方便新手不自己手动进wordpress_back_up脚本写变量,所以我特别另外写了一个脚本叫controller。写这个脚本的目的就是为了帮助不懂脚本的新手不必要的麻烦并且可以让学习linux的人了解sed使用方法!
新版本食用指南:
和老版本不同的是新版本首先执行controller.sh脚本会提示你相关输入信息,第一个就是让你填写wordpress_back_up.sh脚本位置(注:不要填写老版本0.1位置否则会报错!)更具提示一步一步填写!最后两个文件位置分别填写临时文件存储位置和tar文件存放位置!填写完毕以后会将您填写的内容呈现给你看,随后选择y代表将你所填写的文字添加到wordpress_back_up.sh文件中,填写n代表退出该脚本(写错的同学可以选择退出之后重新填写)!
已知BUG:
①和0.1版本一样的tar的BUG,这次更新只是添加了一个接口方便大家填写信息!
②使用controller脚本写错信息后并且已经将信息执行到wordpress_back_up之后是没有办法挽回的,如果你懂得一点点脚本的话可以进入wordpress_back_up.sh将刚刚的信息删除。
③该版本没有填写日志的功能,因为我考虑到是一次性脚本,主要还是依靠wordpress_back_up.sh脚本。所以最后成功显示为:success!!如果有报错的情况,比如只在wordpress_back_up.sh插入2个数据的话你得考虑是否你填写错误导致,并且还得重新下载我的脚本填写,所以在执行之前请把wordpress_back_up.sh备份一下!

Comments

Leave a Reply

Your email address will not be published. Name and email are required