用nginx+twisted+fastcgi部署的基于xapian的全文搜索系统,在需要同步sqlserver的数据库的数据到索引文件里去的时候,用的pymssql做的驱动,结果发现pymssql在服务开启后,系统报tds_init_winsock: WSAEnumProtocols failed with 10055(WSAENOBUFS: No buffer space available.)异常。google了一会,有为同学也出现了twisted+pymssql冲突的问题,他的意思是先到pymssql,后到twisted的模块,按照他的方法去解决,结果我这里的人品没有爆发,不行,异常照样出现。于是就想既然不能在service里运行的话,就放到脚本里去执行。果然,It works。

    总结一下,pymssql去连接sqlserver数据库总是显得有些蛋疼,nvarchar,nvartext都不支持,需要cast(name as varchar) as name一下,在linux下去连接也折腾了很好一段时间,需要装freetds。还有在网上看到有人说这个在读取大量数据时就挂掉。等等问题。没有办法啊,微软的东西,就他妈的这个样子。