php项目的迁移部署

前言

当你的项目需要迁移到其它服务器上部署时,就需要对项目的代码与数据库进行相应的操作,并需要更改配置,方能在迁移后,正常开启服务应用

迁移部署流程
补充

本文作者原部署php项目采用的是docker-compose方式部署php项目,迁移后也是采用此方式部署,特此先提醒阅读者

把原服务器网站根目录迁移至目标服务器

在目标服务器上创建网站根目录

mkdir /data/web

在原服务器上迁移原网站根目录

scp -r /data/web root@xxx.xxx.xxx.xxx:/data/web	# 请自行输入密码

在目标服务器上授权网站根目录

chown -R 100:101 /data/web
chmod 777 /data/web
修改目标服务器连接数据库文件

如下为参考,请根据自己的项目进行调整

cat /data/web/data/common.inc.php 
<?php
//数据库连接信息
$cfg_dbtype = 'mysql';
$cfg_dbhost = 'xxx.xxx.xxx.xxx';	# 此行为修改内容,为ip地址
$cfg_dbname = 'xxx';
$cfg_dbuser = 'xxx';
$cfg_dbpwd = 'xxx';
$cfg_dbprefix = 'xxx';
$cfg_db_language = 'utf8';
?>
目标服务器部署
cat > docker-compose.yml <<-EOF
version: "3.5"
services:
  mysql:
    image: mysql:5.7
    container_name: mysql5.7
    hostname: mysql5.7
    ports:
      - 3306:3306    
    environment:
      - MYSQL_DATABASE=nature
      - MYSQL_USER=nature
      - MYSQL_PASSWORD=root@1234
      - MYSQL_ROOT_PASSWORD=nature@1234
      - SET_CONTAINER_TIMEZONE=true
      - CONTAINER_TIMEZONE=Asia/Shanghai
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /home/mysql:/var/lib/mysql:Z
    command: ["--character-set-server=utf8mb4","--collation-server=utf8mb4_unicode_ci","--lower-case-table-names=1"]
    restart: always
    tty: true

  nginx_php-fpm:
    image: richarvey/nginx-php-fpm
    container_name: nginx_php-fpm
    hostname: nginx_php-fpm
    ports:
      - 80:80
    environment:
      - SET_CONTAINER_TIMEZONE=true
      - CONTAINER_TIMEZONE=Asia/Shanghai
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /data/web:/var/www/html:Z
    restart: always
    tty: true
EOF    
docker-compose up -d
把原服务器网站的数据库迁移至目标服务器上的数据库

在原服务器上备份数据库

docker exec -i mysql5.7 mysqldump -uroot -pnature@1234 nature > nature.sql

把原服务器备份的数据库文件传至目标服务器

scp -r nature.sql root@xxx.xxx.xxx.xxx:/root/nature.sql	# 请自行输入密码

在目标服务器上把数据库文件放置mysql5.7容器内

docker cp nature.sql msyql5.7:/

在目标服务器的mysql5.7容器内还原数据库

docker exec -it mysql5.7 /bin/bash
mysql -uroot -pnature@1234
mysql> source /nature.sql
mysql> exit;
访问目标服务器web服务

ip:port或者域名访问,请自行处理

结语

… …

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值