• mysqldbcompare-网站迁移神器


    一、代码
    1.本地重新建立站点,配置nginx和host,并导入新站代码;

    二、数据库
    2.导出旧站数据库结构和数据;
    3.本地旧站数据库;
    4.使用mysqldbcompare对比新旧站数据库结构。命令:
    mysqldbcompare --server1=root:123456@192.168.56.101 --server2=root:123456@192.168.56.101 --changes-for=server2 --difftype=sql --skip-table-options --skip-row-count --skip-checksum-table --skip-data-check --run-all-tests theme:otheme>diff_of_dbs.sql
    5.如果旧站包含比新站多的数据表,略过,在调试接口的时候在验证是否有影响。
    6.如果旧站有缺少了新站中的数据表,根据表结构差异创建这些表(发到正式站之前,要拿正式站对比测试站表)。
    7.如果表结构有更改,使用mysqldbcompare的结果alter这些数据表。
    注意:
    (1)mysqldbcompare生成的是用逗号隔开的多MySQL语句,这可能会有“Unknown column”错误,避免这个错误的方法就是去掉AFTER条件(这是MySQL的一个已知BUG):
    sAFTER (w+)([,;]{1})
    替换为:
    2
    (2)如果导入MySQL语句有error,那么这条语句会无法执行,修改正确后再单独导入这条语句。
    (3)MySQL执行之后再执行一次对比。
    8.对于mysqldbcompare中有DROP COLUMN的字段,需要在接口检查是否有引用。
    * theme_comment 删除theme_id
    * wallpaper_file_image 删除12个字段
    * wallpaper_subject 删除 14个字段
    * wallpaper_type 删除15个字段
    * wallpaperlive_file 删除2个字段
    * 删除theme_file_shows的索引:IX_resulution_status_sort

    三、配置
    8.修改数据库配置文件dbConfig.php,和原来的数据库匹配。
    9.修改站点配置文件application.ini,和新站点的域名匹配。


    四、配置nginx和域名

    *** <www> 代表网站源码根目录

    1.对比前后siteConfig.php,要做如下的目录调整:
    原目录 <www>/attachs/theme_theme/attachs/themefile/ 移动为 <www>/themefile/,在其下新建 file 目录,并把原themefile下面的所有目录移到 file 目录中。
    原目录 <www>/attachs/theme_theme/attachs/wallpaperlive/ 移动为 <www>/themefile/wallpaperlive/
    原目录 <www>/attachs/theme_theme/attachs/clock/ 移动为 <www>/themefile/clock
    原目录 <www>/attachs/theme_theme/attachs/Engin/ 移动为 <www>/themefile/Engin
    添加目录:<www>/themefile/font
    增加目录:<www>/themefile/themeEngine
    说明:<www>/themefile/ 和 <www>/attachs/ 目录归属于Nginx指定的用户。
    3.nginx配置添加如下代码:
    =============================
    a.开发站front.*域名
    正式站zassetsdl.*域名
    测试站90端口添加:
    location /down {
    alias <www>/themefile/;
    }
    b.开发站front.*、admin.*域名
    正式站assetsdl.*、themebackendadm.*域名
    测试站81、82端口,添加下面的代码
    location /statics {
    alias <www>/theme_theme/public/statics/;
    }

    c.测试站81、82端口添加:
    location /attachs/theme/ {
    alias <www>/attachs/theme_theme/attachs/;
    }

    d.开发站front.*域名
    正式站theme.*域名
    开发证82端口添加:
    location / {
    rewrite "^/detail/down/(.*)$" /detail/down?id=$1 last;
    rewrite (.*) /index.php last;
    }

  • 相关阅读:
    自考过后的总结——如何快乐学习?
    自考总结——数据库原理第三章
    机房收费系统——用户权限和功能分析
    SQL视频总结
    学生信息管理系统总结——数据库的访问方式
    学习信息管理系统总结——数据库的连接和访问(一)
    学生信息管理系统总结——student数据库中表关系分析
    Kafka-文件管理
    Kafka-分区分配规则
    Kafka-处理请求(生产请求、获取请求)
  • 原文地址:https://www.cnblogs.com/ims2007/p/7521535.html
Copyright © 2020-2023  润新知