“推土”小记

十一这几天留在学校没回家跟胡扬,胡淼,强哥一起“推土”加上写一点新版新闻网的后台,这次来客串写点php。“推土”就是把原来的像17,43,45这几台跑windows的老机器尽量换成linux的,还有几台跑在45上的虚拟机都搬到13,14上。哎,想想之前做的有那么多网站就觉得好累。

今天一天我完成了原来用discuz搭的bbs的迁移,冰岩博客的迁移和华中大知多少的迁移,原先代码都在43上,数据库在17上,都是windows服务器,43上还有ftp服务,17上就什么都没有,dump下来的表都是用百度云上传的==!最后把它们全都放到13上了,整个都是体力劳动啊,后面应该想想一些重复的劳动怎样用脚本来解决掉。

不过过程中还是收获到不少知识,对很多问题也有了自己的理解。

  1. 数据库导出与导入

    • mysqldump -u username -p dbname > name.sql
    • CREATE DATABASE dbname;
      USE dbname;
      SOURCE name.sql;
      

    还是相当方便的

  2. scp命令

    • 从本地到服务器,2012是端口,不同服务器不同
      scp -P2012 /home/mrzero/test.txt user@example.com:/home/user
    • 从服务器到本地
      scp -P2012 user@example.com:/home/user/test.txt /home/mrzero
      scp这个命令还真是不好用,又臭又长还不能tab出文件名,很蛋疼。如果有图形界面的话,还是用filezilla来传文件吧。
  3. ftp下载
    我用Python写了一段脚本来下上传的文件,先是在iPython里一点点测试,成功后用scp传到13上的。用到的是ftplib,这是Python的标准库,果然是battery include啊~~

from ftplib import FTP

    ftp = FTP()
    ftp.connect(host="xxxxxxx", port=xxxx)
    ftp.login(user="xxxxxx", passwd="xxxxx")

    filehandler = open('test.txt', 'wb').write
    # ftp.retrbinary('RETR robots.txt', filehandler)
    ftp.cwd('chenxiangyu')
    ftp.retrbinary('RETR test.txt', filehandler)

感觉写得相当挫,不过能用=。=
后面再改改能加上命令行参数就能在团队里共享,以后部署到服务器上就很欢乐了,现在简直是...
不过在部署和管理方面,shell scripts应该能更自在地工作,后面一空下来就要学学shell scripts啊!

  1. php的部署流程
    • 把代码目录放到/var/www/example.com下
    • 在/etc/nginx/sites-avalible下建配置文件
    • 在/etc/nginx/sites-enabled下建立到avalible目录的软链接
      ln -s example.com ../sites-avalible/example.com
    • reload nginx一下,把配置文件更新
    • 对于搬迁服务器来说,还要在dnspod上将域名的指向改掉,并修改数据库配置,等一下下,没bug就可以去玩啦~~~

*奥,就是这个样子,明天再在自己电脑上折腾下把nginx配好吧,还要从零入门php和CI框架。哎,十一也过的这么累,不过还是进步很快的就是啦,最后谢谢胡扬大神的悉心指导,bug还要加油才是! *

原文地址:https://www.cnblogs.com/mrzero/p/4005572.html