网站迁移

一. 旧服务器

数据备份并导出

网站使用wordpress 和 apache2 搭建,所以迁移比较方便。

1. mysql导出数据库

1.1 导出某个数据库

mysqldump -u username -p dbname [tbname ...]> filename.sql

username:表示用户名称;

dbname:表示需要备份的数据库名称;

tbname:表示数据库中需要备份的数据表,可以指定多个数据表。省略该参数时,会备份整个数据库;

右箭头“>”:用来告诉 mysqldump 将备份数据表的定义和数据写入备份文件;

filename.sql:表示备份文件的名称,文件名前面可以加绝对路径。通常将数据库备份成一个后缀名为.sql的文件。

1.2 导出多个数据库

mysqldump -u username -P --databases dbname1 dbname2 ... > filename.sql

加上“–databases”参数后,必须指定至少一个数据库名称,多个数据库名称之间用空格隔开。

1.3 导出所有数据库

mysqldump -u username -P --all-databases>filename.sql

使用“–all-databases”参数时,不需要指定数据库名称。

2. 网站数据备份

备份/var/www/html下所有内容,并下载

二. 新服务器

1. 环境准备

1.1 安装mysql

# 备份并修改sources.list
sudo cp /etc/apt/sources.list /etc/apt/sources.list.old

# 编辑sources.list文件
sudo vim /etc/apt/sources.list

# 添加清华镜像源
# 清华镜像源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse

# 更新源和软件,并安装mysql5.7
sudo apt-get update
sudo apt-get upgrade

sudo apt-get install mysql-server-5.7

1.2 安装apache2

sudo apt-get install apache2

1.3. 安装php

sudo apt-get install php7.4 
sudo apt-get install php-mysql

2. 导入数据

2.1 导入网站数据

将备份的/html下文件,上传到新服务器并移动到/var/www/html文件夹下

2.2 导入数据库

mysql -u username -P [dbname] < filename.sql

username 表示用户名称;
dbname 表示数据库名称,该参数是可选参数。如果 filename.sql 文件为 mysqldump 命令创建的包含创建数据库语句的文件,则执行时不需要指定数据库名。如果指定的数据库名不存在将会报错;
filename.sql 表示备份文件的名称。

三. 域名备案与解析

更换了新的服务商,需要重新备案域名