北京SEO

Linux系统定时备份数据库和网站例子

2019/10/10/17:46:49  阅读:1731  来源:谷歌SEO算法  标签: AI科学家

下面本站长给大家整理一些关于在linux系统中对于mysql数据库与网站文件备份的命令,这些方法非常的好,希望对各位会带来帮助.

首先创建一个备份文件,代码如下:

mkdir /datalin/data

vi /datalin/databak 写下下面的内容,停止数据库,lnmp环境,说明不要写进去:

  1. /etc/init.d/mysqlstop
  2. tarzcvf/datalin/data/bakmysql.tar.gz/datalin/mysql
  3. //启动数据库(说明不要写进去)
  4. /etc/init.d/mysqlstart)

括号里面的是以前的想法,貌似停止mysql服务不好,听了朋友,友链中的技术小强,的想法后,这样做:

mysqldump -uroot -p密码 数据库名 > /datalin/mysql/名称.sql -u后面没有空格 -p后面没有空格

这个命令是导出命令 如果以后想导入mysql 则用 mysql -uroot -p密码 库名 < 库备份.sql,代码如下:

tar zcvf /datalin/data/bakwwwroot.tar.gz /datalin/wwwroot

如果需要每次保存备份文件需要创建文件的时候用date函数来为文件夹命名,修改文件属性,使其可执行,代码如下:

  1. chmod+x/datalin/databak
  2. --修改/etc/crontab
  3. vi/etc/crontab--写下
  4. 0023***root/datalin/databak

意思是:每天23:00 执行备份

重启crond:/etc/rc.d/init.d/crond restart

OK了,每天在/datalin/data 就可以看到备份的文件了,你直接下载就可以.

利用mysqldump方法,代码如下:

  1. #!/bin/sh
  2. #定义变量,请根据具体情况修改
  3. #定义脚本目录
  4. scriptsDir=`pwd`
  5. #定义用于备份数据库的用户名和密码
  6. user=root
  7. userPWD=123456
  8. #定义备份数据库名称
  9. dbNames=(jishubuxingzhengbushichangbu)
  10. #定义备份目录
  11. dataBackupDir=/home/backup
  12. #定义备份日志文件
  13. logFile=$dataBackupDir/log/mysqlbackup.log
  14. #DATE=`date-I`
  15. DATE=`date-d"now"+%Y%m%d`
  16. echo`date-d"now""+%Y-%m-%d%H:%M:%S"`>$eMailFile
  17. fordbNamein${dbNames[*]}
  18. do
  19. #定义备份文件名
  20. dumpFile=$dataBackupDir/db/$dbName-$DATE.sql.gz
  21. #使用mysqldump备份数据库,请根据具体情况设置参数
  22. /usr/local/mysql/bin/mysqldump-u$user-p$userPWD$dbName|gzip>$dumpFile
  23. if[[$?==0]];then
  24. echo"DataBaseBackupSuccess!">>$eMailFile
  25. else
  26. echo"DataBaseBackupFail!">>$emailFile
  27. fi
  28. #写日志文件
  29. echo"================================">>$logFile
  30. cat$eMailFile>>$logFile
  31. echo$dumpFile>>$logFile
  32. done
  33. #ftp上传备份
  34. fordbNamein${dbNames[*]}
  35. do
  36. file1=$dbName-$DATE.sql.gz
  37. //phpfensi.com
  38. ftp-v-n127.0.0.1<<EOF
  39. userjishubu123456
  40. bi
  41. cdmysql
  42. lcd$dataBackupDir/db
  43. mput$file1
  44. bye
  45. EOF
  46. done

本shell运行前请手动建立/home/backup/db /home/backup/log 目录,shell 运行前记得添加执行权限 chmod 777 databasebackup.sh

修改改好后添加定时任务:

  1. crontab-e
  2. 0103***/root/databasebackup.sh>>/home/backup/log/crontablog.txt

广告内容

Linux系统定时备份数据库和网站例子 Linux系统定时备份数据库和网站例子 Linux系统定时备份数据库和网站例子

相关阅读

热门评论

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法