这是一次更改服务器不更改域名的搬家记录,小伙伴们需要注意

首先对网站原有数据库和网站目录文件进行打包处理,这里我使用了一个打包备份脚本

#!/bin/bash

#Funciont: Backup website and mysql database

#IMPORTANT!!!Please Setting the following Values!

Backup_Home="/bf/backup"
MySQL_Dump="/usr/local/mysql/bin/mysqldump"
######~Set Directory you want to backup~######
Backup_Dir=("/home/wwwroot/www.linhut.cn" )

######~Set MySQL Database you want to backup~######
Backup_Database=("需要备份的数据库")

######~Set MySQL UserName and password~######
MYSQL_UserName='数据库用户'
MYSQL_PassWord='你的数据库密码'

######~Enable Ftp Backup~######
Enable_FTP=1
# 0: enable; 1: disable
######~Set FTP Information~######
FTP_Host='FTP服务器地址'
FTP_Username='FPT用户名'
FTP_Password='FTP用户密码'
FTP_Dir="FTP共享目录"

#Values Setting END!

TodayWWWBackup=www-*-$(date +"%Y%m%d").tar.gz
TodayDBBackup=db-*-$(date +"%Y%m%d").sql
OldWWWBackup=www-*-$(date -d -3day +"%Y%m%d").tar.gz
OldDBBackup=db-*-$(date -d -3day +"%Y%m%d").sql

Backup_Dir()
{
    Backup_Path=$1
    Dir_Name=`echo ${Backup_Path##*/}`
    Pre_Dir=`echo ${Backup_Path}|sed 's/'${Dir_Name}'//g'`
    tar zcf ${Backup_Home}www-${Dir_Name}-$(date +"%Y%m%d").tar.gz -C ${Pre_Dir} ${Dir_Name}
}
Backup_Sql()
{
    ${MySQL_Dump} -u$MYSQL_UserName -p$MYSQL_PassWord $1 > ${Backup_Home}db-$1-$(date +"%Y%m%d").sql
}

if [ ! -f ${MySQL_Dump} ]; then 
    echo "mysqldump command not found.please check your setting."
    exit 1
fi

if [ ! -d ${Backup_Home} ]; then 
    mkdir -p ${Backup_Home}
fi

type lftp >/dev/null 2>&1 || { echo >&2 "lftp command not found. Install: centos:yum install lftp,debian/ubuntu:apt-get install lftp."; }

echo "Backup website files..."
for dd in ${Backup_Dir[@]};do
    Backup_Dir ${dd}
done

echo "Backup Databases..."
for db in ${Backup_Database[@]};do
    Backup_Sql ${db}
done

echo "Delete old backup files..."
rm -f ${Backup_Home}${OldWWWBackup}
rm -f ${Backup_Home}${OldDBBackup}

if [ ${Enable_FTP} = 0 ]; then
    echo "Uploading backup files to ftp..."
    cd ${Backup_Home}
    lftp ${FTP_Host} -u ${FTP_Username},${FTP_Password} << EOF
cd ${FTP_Dir}
mrm ${OldWWWBackup}
mrm ${OldDBBackup}
mput ${TodayWWWBackup}
mput ${TodayDBBackup}
bye
EOF

echo "complete."
fi

执行脚本: sh bf.sh 脚本加入到计划任务里:

[root@linhut bf]# crontab -eu root
* 1 * * * /bf/bf.sh     #加入计划条目,每天1点执行备份脚本
[root@linhut /]# crontab -u root -l                #查看计划任务
* 1 * * * /bf/bf.sh
* 20 * * * /usr/bin/python /root/qd.py

效果如下: 当完成数据备份后,开始进行新服务器的数据导入工作,在这里具体的新环境部署安装演示就不做了

方法一 phpmyadmin导入

使用phpmyadmin进行数据导入

1: 进入数据库进行数据库的创建 PS:这里新建的库最好和你原使用库为一致 如wplinhut库创建

登录面板后台---》点击新建---》输入wplinhut点击创建

登录面板后台---》选择你需要导入的库---》点击导入选择上传你之前备份的sql文件---》点击执行

方法二 MySQL命令导入

mysql字符命令创建,以wplinhut库为例子

mysql -uroot -predhat     #登录你的数据库
create database wplinhut;     #创建你的库
use wplinhut;               
show tables;
source /root/users.sql;     #直接导入库文件
grant select on wplinhut.* to linhut@'localhost' identified by'redhat';     #你的这个库的用户和密码PS:如果你网站是root登录此后操作都可以省略
select Host,User,Password,Select_priv from mysql.user;

网站文件的解压还原

1:
cp backupwww-www.linhut.cn-20180604.tar.gz /home/wwwroot/www.linhut.cn/     #拷贝备份文件到网站根目录
cd /home/wwwroot/www.linhut.cn/                    
tar -xvf backupwww-www.linhut.cn-20180604.tar.gz          #解压备份压缩包
ll www.linhut.cn/
cd ..
cd www.linhut.cn/
cp www.linhut.cn/* ./ -R          #把备份文件递归复制到网站跟目录
ls
rm -fr www.linhut.cn              #删除多余文件夹

至此完成整个网站的备份迁移工作!