1、前言
搞了好几天终于弄了出来,简单记录一下。注意以下教程是在测试服务器基础上编写 如数据盘含有数据切勿使用此教程,如对命令行不熟悉的 不建议搞哈 。本文中的磁盘/dev/sdb为笔者测试服务器上的命名,在您的服务器中可能是/dev/xdb、/dev/vdb、/dev/xvdb等等,请根据实际情况进行修改
2、创建挂载目录 www
mkdir -p /www
3、确认是否没有分区的磁盘
fdisk -l
如下图,没有分区的磁盘是/dev/vdb,在您的服务器中可能是/dev/sdb,请注意按照实际名称修改 I/O size (minimum/optimal): 512 bytes / 512 bytes 与 /dev/vdb1 2048 167772159 83885056 83 Linux 之间没有内容就是没有分区的
4、磁盘分区 若已分区,可跳过
fdisk /dev/vdb
然后输入n开始创建分区
输入p创建主分区
选择分区号 输入1
输入分区开始位置,直接回车
输入wq 回车退出
5、检查是否分区成功(带有sdb1/vdb1/xvb1说明成功)
fdisk -l
6、格式化分区
mkfs.ext4 /dev/vdb1
7、将分区挂载信息添加到配置文件/etc/fstab中,实现开机/重启自动挂载
echo "/dev/vdb1 /www ext4 defaults 0 0" >> /etc/fstab
mount-a
df-h
重新挂载所有分区 mount -a
检查是否挂载成功df -h
8、Mysql的自动备份
没有安装mysql的自己安装一下就不贴教程了
8.1、在挂载磁盘新建文件夹 databack 在databack文件夹下面新建一个back.sh脚本文件
#!/bin/bash
DATE=`date +%Y%m%d%H%M` #every minute 时间
DATABASE=hosp_mobile #database name数据库名称
DB_USERNAME=root #database username用户名
DB_PASSWORD="mysql"#database password密码
BACKUP_PATH=/www/databack #backup path 备份路径
#backup command 命令/usr/bin/mysqldump -u$DB_USERNAME -p$DB_PASSWORD -h 127.0.0.1 -R --opt $DATABASE | gzip > ${BACKUP_PATH}/${DATABASE}_${DATE}.sql.gz
#just backup the latest15 days//保存15天的
find ${BACKUP_PATH}-mtime +15 -name "${DATABASE}_*.sql.gz" -exec rm -f {} ;
8.2、跳转到这个目录
chmod +x back.sh
crontab -e
00 1 * * * /root/database_backup_shell.sh
crontab -l
给脚本授权 chmod +x back.sh
编写定时备份任务 crontab -e
输入凌晨1点备份命令 00 1 * * * /root/database_backup_shell.sh 按desc 再按:wq 保存退出
查看定时任务 crontab -l
可实现每天凌晨三点自动执行第一步编写的脚本,备份mysql数据库到www//backdata,且只保留最近15天的数据库备份。
怎么样 你学废了没有?