温馨提示×

怎么迁移debian lnmp

小樊
40
2026-09-26 01:18:09
栏目: 智能运维

“迁移 Debian LNMP”通常指把 Linux + Nginx + MySQL/MariaDB + PHP 整套环境,从一台 Debian 服务器迁移到另一台 Debian 服务器(或重装系统后恢复)。下面给你一套实用、可落地的迁移方案。


一、迁移前准备

1. 确认环境

在原服务器上查看:

nginx -v
mysql -V
php -v
lsb_release -a

2. 备份内容清单

需要迁移的核心内容:

  • Nginx 配置
  • 网站文件
  • 数据库
  • PHP 配置
  • 证书(SSL)

二、备份(原服务器)

1. Nginx 配置

tar czf nginx-conf.tar.gz /etc/nginx

2. 网站目录

假设网站在 /var/www:

tar czf www.tar.gz /var/www

3. 数据库备份

mysqldump -u root -p --all-databases > all.sql

或单库:

mysqldump -u root -p dbname > dbname.sql

4. PHP 配置

tar czf php-conf.tar.gz /etc/php

5. SSL 证书

tar czf ssl.tar.gz /etc/ssl /etc/letsencrypt

三、新服务器安装 LNMP(Debian)

1. 更新系统

apt update && apt upgrade -y

2. 安装 Nginx

apt install nginx -y

3. 安装 MariaDB(推荐)

apt install mariadb-server -y
mysql_secure_installation

4. 安装 PHP

apt install php-fpm php-mysql php-cli php-curl php-gd php-mbstring -y

四、恢复(新服务器)

1. 恢复 Nginx 配置

tar xzf nginx-conf.tar.gz -C /

2. 恢复网站文件

tar xzf www.tar.gz -C /

3. 恢复 PHP 配置

tar xzf php-conf.tar.gz -C /

4. 恢复数据库

mysql -u root -p < all.sql

5. 恢复证书

tar xzf ssl.tar.gz -C /

五、启动与验证

systemctl restart nginx
systemctl restart php-fpm
systemctl restart mariadb

检查状态:

systemctl status nginx
systemctl status php-fpm
systemctl status mariadb

测试网站访问和 HTTPS。


六、常见问题

1. 权限问题

chown -R www-data:www-data /var/www

2. PHP 版本不一致

修改:

/etc/nginx/sites-enabled/*

中的 fastcgi_pass 路径。

3. 数据库无法登录

确认用户权限是否随库一起导入。


七、可选:一键方案

  • LNMP.org 一键包
  • Docker(推荐长期维护)
  • Ansible 自动化

如果你愿意,可以告诉我:

  • 是原机重装还是换服务器?
  • 用的 MySQL 还是 MariaDB?
  • 是否用 Docker?

我可以直接给你定制迁移命令。

0 踩