Processing math: 100%

生产环境网站论坛迁移的详细操作

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

首先在服务器上查找之前安装好的Discuz安装目录

拷贝到Web安装目录下,重命名


cd /usr/local/src/

cp -r upload /home/WebSer/

mv upload bbs.lh2.com


设置Discuz论坛安装目录的用户用户组权限

chmod -R 755 bbs.lh2.com/

chown -R www.www bbs.lh2.com/


直接拷贝一份之前的论坛配置文件,修改一下域名

cp bbs_lh.conf bbs_lh2.conf


vim bbs_lh2.conf 

server {

  listen 80;

  server_name server ip;


  access_log /home/lnmp/nginx/logs/lh.log combined;

  root /home/WebSer/bbs.lh2.com;

  index forum.php index.html index.htm index.php;


创建一个之前论坛的老数据库名bbs_lh_old

然后导出之前的数据库,导入到bbs_lh_old里面去

改一下数据库配置文件,切换到这个库,保证线上论坛业务不受影响


MySQL [bbs_lh_old]> create database bbs_lh_old;


这里继续使用之前的论坛数据库用户名和密码,设置bbs_lh_old权限

MySQL [bbs_lh_old]> grant all on bbs_lh_old.* to oldusername@localhost identified by 'oldpassword';


导出之前论坛的数据库

mysqldump -uroot -p bbs_lh > bbs.lh.sql


导入到bbs_lh_old里面去

mysql -uroot -p bbs_lh_old < bbs.lh.sql


改一下数据库配置文件,切换到bbs_lh_old这个库,保证线上论坛业务不受影响


cd /home/WebSer/bbs.lh.com/


vim uc_server/data/config.inc.php 

<?php

define('UC_DBHOST', 'localhost');

define('UC_DBUSER', 'oldusername');

define('UC_DBPW', 'oldpassword');

define('UC_DBNAME', 'bbs_lh_old');


vim config/config_global.php 

$_config = array();


// ----------------------------  CONFIG DB  ----------------------------- //

$_config['db']['1']['dbhost'] = 'localhost';

$_config['db']['1']['dbuser'] = 'oldusername';

$_config['db']['1']['dbpw'] = 'oldpassword';

$_config['db']['1']['dbname'] = 'bbs_lh_old';


vim config/config_ucenter.php 

<?php

define('UC_CONNECT', 'mysql');

define('UC_DBHOST', 'localhost');

define('UC_DBUSER', 'oldusername');

define('UC_DBPW', 'oldpassword');

define('UC_DBNAME', 'bbs_lh_old');


现在重启一下Nginx、PHP、MySQL服务,测试一下看看论坛访问是否正常

service nginx restart

service mysqld restart

service php-fpm restart


通过浏览器访问论坛测试正常后,下面可以把之前论坛的数据库删除了

新建一个数据库,数据库名和之前的一样,设置新数据库用户权限和密码


MySQL [(none)]> drop database bbs_lh;

MySQL [(none)]> create database bbs_lh;

MySQL [(none)]> grant all on bbs_lh.* to oldusername@localhost identified by 'oldpassword';


现在就可以去浏览器输入新论坛bbs_lh2.conf对应的域名,安装Discuz论坛了

在Discuz论坛图形安装界面填写一些信息


数据库服务器:localhost

数据库名:bbs_lh

数据库用户名:oldusername

数据库密码:oldpassword


新论坛bbs.lh2.com 访问方式:IP

旧论坛bbs.lh.com访问方式:域名


根据论坛管理员的需求,导入之前论坛数据库的有关数据和用户信息到新数据库中去

然后通知论坛管理员,现在要切换新论坛和旧论坛的域名,建议他暂时关闭网站之后自己配置论坛


vim /home/lnmp/nginx/conf/vhost/bbs_lh_old.conf 

server {

  listen 80;

  server_name IP;


cd /home/WebSer/bbs.lh_old.com


vim config/config_ucenter.php

define('UC_API', 'http://IP/uc_server');


vim /home/lnmp/nginx/conf/vhost/bbs_lh.conf 

server {

  listen 80;

  server_name domain name;


cd /home/WebSer/bbs.lh.com


vim config/config_ucenter.php 

define('UC_API', 'http://domain name/uc_server');


然后通知官网开发人员Z,让他修改有关配置

不要忘了找出key发给Z - $bbs/uc_server/data/config.inc.php 里的key


因为线上环境域名解析,早已经找CDN工程师做好了,现在新论坛的域名没有变,就不用改域名解析了

需要做的是,修改一下备份脚本的内容,之前备份的旧论坛数据,现在改成备份现在的新论坛数据即可


cd /home/BACKUP/

vim backup.sh 


#!/bin/bash


echo -e "\033[31;15m---------------------------\033[0m"

echo -e "\033[31;1m开始运行博客数据库备份脚本:\033[0m"

echo -e "\033[31;15m---------------------------\033[0m"


DB_USER=root

DB_PWD='db mysql password'

DB_NAME=("bbs_ld" "bbs_lh" "bbs_lh_old" "bbs_zb" "blog_lh")

BACKUP_PATH=/home/BACKUP/db

BACKUP_DATE=`date +%Y%m%d-%H%M%S`


CODE_SRCPATH=/home/WebSer/

CODE_DESTPATH=/home/BACKUP/code

CODE_NAME=("bbs.ld.com" "bbs.lh.com" "bbs.lh_old.com" "bbs.zb.com" "blog.lh.com")


#创建备份目录

if [ ! -e BACKUPPATH]||[!eCODE_DESTPATH ];then

        echo -e "\033[33m创建备份目录/home/BACKUP......\033[0m"

        /bin/mkdir -p BACKUPPATHCODE_DESTPATH > /dev/null 2>&1

        echo -e "\033[33m备份目录/home/BACKUP创建完成!\n\033[0m"

fi


#备份博客数据库并删除

for BACKUP_DB in ${DB_NAME[@]};do

        echo "开始备份数据库-$BACKUP_DB......"

        /home/lnmp/mysql/bin/mysqldump -uDBUSERpDB_PWD BACKUPDB>BACKUP_PATH/BACKUPDBBACKUP_DATE.sql

        #echo BACKUPPATH/BACKUP_DB-$BACKUP_DATE.sql

        echo -e "\033[33m$BACKUP_DB库备份完成!\033[0m"

        echo "--------------------"

done


#/bin/find $BACKUP_PATH -type f -name "*.sql" -mtime +5 |xargs rm -rf


echo -e "\033[31;15m---------------------------\033[0m"

echo -e "\033[31;1m开始运行博客源码备份脚本:\033[0m"

echo -e "\033[31;15m---------------------------\033[0m"


#备份博客源码并删除

cd $CODE_SRCPATH

for BACKUP_CODE in ${CODE_NAME[@]};do

        echo "开始备份源码-$BACKUP_CODE......"

        #/bin/tar zcf BACKUPCODEBACKUP_DATE.tar.gz $BACKUP_CODE/

        #/bin/mv BACKUPCODEBACKUP_DATE.tar.gz $CODE_DESTPATH

        /bin/cp -R BACKUPCODECODE_DESTPATH/BACKUPCODEBACKUP_DATE.bak

        echo -e "\033[33m$BACKUP_CODE源码备份完成!\033[0m"

        echo "--------------------"

done


#/bin/find $CODE_DESTPATH -type d -name "*.bak" -mtime +5 |xargs rm -rf



本文转自 2012hjtwyf 51CTO博客,原文链接:http://blog.51cto.com/hujiangtao/1922017,如需转载请自行联系原作者

相关文章
|
11月前
|
SQL 安全 测试技术
项目迁移到云服务器,如何做迁移测试?
项目迁移到云服务器,如何做迁移测试?
235 0
|
SQL 安全 Cloud Native
用NineData三分钟搭建企业数据库安全访问平台,告别数据泄露与删库跑路
面对数据安全挑战,玖章算术公司研发了新一代云原生数据管理平台NineData,系统采用最新的云原生+AIGC技术,支持对内部员工和外部ISV伙伴做细粒度的数据库权限配置和操作审计,提供灵活的生产数据库操作自动化审批流程,内置了数百个数据库安全操作规范和敏感数据保护能力,可以帮助企业规避低级误操作,降低数据泄露和删库跑路的隐患。
724 1
|
弹性计算 Ubuntu 关系型数据库
服务器迁移最佳实践
越来越多的企业上云后,在窗口期内快速、平滑迁移到阿里云上,用最优的方案来实践以及实现业务价值。
897 0
服务器迁移最佳实践
|
存储 资源调度 Cloud Native
阿里云迁移工具推荐最佳实践:物理服务器迁移到阿里云
阿里云迁移工具推荐最佳实践:物理服务器迁移到阿里云
阿里云迁移工具推荐最佳实践:物理服务器迁移到阿里云
|
数据库
ecshop网站搬家过程中数据库太大不好备份解决方案
ecshop网站搬家过程中数据库太大不好备份解决方案
|
弹性计算 运维 监控
十分钟上线- CodeIgniter 项目迁移到函数计算
阿里云函数计算 Function Compute(FC),旨在帮助用户采用弹性伸缩、动态分配资源的方式,来执行业务函数。让用户无需购买部署服务器,无需考虑业务负载,就能快速搭建可处理高并发的后台服务。
十分钟上线- CodeIgniter 项目迁移到函数计算
|
弹性计算 Linux Windows
P2V迁云工具迁移测试
最近的迁移项目有对应用系统进行打镜像迁移到ECS,先本地测试工具使用
3708 0
P2V迁云工具迁移测试
|
Serverless 文件存储 PHP
十分钟上线-CodeIgniter项目迁移到函数计算
前言 阿里云函数计算 Function Compute(FC),旨在帮助用户采用弹性伸缩、动态分配资源的方式,来执行业务函数。让用户无需购买部署服务器,无需考虑业务负载,就能快速搭建可处理高并发的后台服务。
1298 0
如何使用迁云工具迁移服务器到阿里云?
阿里云迁云工具,简称迁云工具,是一个阿里云自主研发的能将服务器中的操作系统、应用程序以及应用数据等迁移到阿里云并生成ECS镜像的离线客户端工具。 阿里云迁云工具是专为平衡阿里云用户的线上线下服务器负载,或者各种不同云平台之间的负载而研制的。
1958 0
阿里云怎么使用?网站上线必备步骤
很多新用户朋友出于某些原因,购买了阿里云服务器,但是买来后,发现只是一个空白的服务器,没有安装任何服务器运行环境,比如程序语言,数据库,FTP等,不知道怎么用!下面简单介绍下小白用户将服务器买来之后,搭建我们的网站还需要做什么?建站所必须:域名、服务器、程序源码一. 域名: 注册好域名,注册地址:https://wanwang.aliyun.com/?spm=5176.8142029.selected.4.e9396d3eyvDwRn 并给域名做好实名认证。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等