“推土”小记
十一这几天留在学校没回家跟胡扬,胡淼,强哥一起“推土”加上写一点新版新闻网的后台,这次来客串写点php。“推土”就是把原来的像17,43,45这几台跑windows的老机器尽量换成linux的,还有几台跑在45上的虚拟机都搬到13,14上。哎,想想之前做的有那么多网站就觉得好累。
今天一天我完成了原来用discuz搭的bbs的迁移,冰岩博客的迁移和华中大知多少的迁移,原先代码都在43上,数据库在17上,都是windows服务器,43上还有ftp服务,17上就什么都没有,dump下来的表都是用百度云上传的==!最后把它们全都放到13上了,整个都是体力劳动啊,后面应该想想一些重复的劳动怎样用脚本来解决掉。
不过过程中还是收获到不少知识,对很多问题也有了自己的理解。
-
数据库导出与导入
mysqldump -u username -p dbname > name.sql
-
CREATE DATABASE dbname; USE dbname; SOURCE name.sql;
还是相当方便的
-
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来传文件吧。
- 从本地到服务器,2012是端口,不同服务器不同
-
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啊!
- 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还要加油才是! *