No route to host 错误的解决

实验室需要一个新的 redis 服务器,作为内网的公共服务。所以配了个内存 20G 硬盘 15G 的奇葩货。 这货的操作系统为 CentOS, 基本什么都没装, 通过 ISO 捣腾出来后,就用 yum 更新了下,加了个 tmux 和 redis, 一通配置完毕 chkconfig redis on, 然后自嗨了下。

[root@localhost ~]# redis-cli ping
PONG

这种小事做起来毫无压力,写写代码看看俺妹顺便搞定操作系统,三线操作真是毫无压力,收工的时候,顺手测试下远程ping下--本来只是走个程序而已,意外发现居然没有得到需要的 PONG. (more…)

QString, std::string 和 const char * 的互相转换

好多人都喜欢重新造一个轮子, 所以这个世界上的的轮子千奇百怪. 作为在这些轮子下面苟延残喘的洒家,往往不得不无尽的寻找两个轮子之间转换的方法. STL库, 作为标准库, 在写C++的时候理所当然的, 被各种使用. const char * 数组, 作为和C一起过来的小伙伴, 在很多场合下也会被调用. 如果脑抽居然还打算使用Qt, 那么,Qt自带的QString, 恐怕也很难有人能完全不使用. 于是乎, 类型转换就是个问题了. (more…)

callback 用法简介

callback,函数的回调,从ANSI C开始,一直被广为使用。无论是windows API的所谓消息机制,动态链接库的调用,还是sqlite的命令,gcc下的pthread,qsort。callback都在其中起着难以替代的作用。

(more…)

Oneiro 主题调试记录:评论区域的优化和邮件插件的更换

Note: 因为后来不再使用这个主题,内容仅供参考 orz。

@良心发现的主题Oneiro,据自称是"折腾html5的即兴之作",里面使用了大量的html新特性,里面有很多实验性的内容。一般情况下,作为在前端凑活过,希望付更多精力在后端的我,会无视掉这个主题才对,但实在太漂亮了,真的很不错。

于是下载过来主题,各种粗暴的修改了一堆设定后,就直接丢小站上上线了。之前一些修改都是属于“我喜欢这样”这种类型的,今天做了一些对白璧微瑕的修改。主要记录的是对评论部分的一些完善。

(more…)

spring下的IncompatibleClassChangeError

使用Maven管理传说中的CRUD程序员三部曲,一路坎坷不必细说,都整完了还给我报个IncompatibleClassChangeError

java.lang.IncompatibleClassChangeError: 
    class org.springframework.core.LocalVariableTableParameterNameDiscoverer
    $ParameterNameDiscoveringVisitor has 
    interface org.springframework.asm.ClassVisitor as super class

有完没完.... (more…)

mysql添加自增索引后一个报错解

现在有一个mysql数据库表,需要给主键加上自增。很容易可以找到命令类似于下面这样

alter table `table_name` 
change column `id` 
`id` int(10) unsigned auto_increment not null ;

但是,一直没问题的代码这次失效了,报错如下:

ERROR 1062: ALTER TABLE causes auto_increment resequencing, 
resulting in duplicate entry '1' for key 'PRIMARY'

(more…)

Qt 下 ibus 托盘跟随问题

经常使用一些QT的程序。因为这玩意儿是跨平台的,所以很受大家喜欢。 但是,作为一个使用ibus+qt的中文使用者,常常遇到这样悲剧的问题--输入中文的时候,ibus成功打开,输入也没啥大问题,除了,每次输入中文,那个托盘总是在左下角晃荡--我了个去,锻炼我的眼球么? 在网上常常可以看到各种解决,不过大多认为是ibus的问题,建议我们安装ibus-qt这玩意儿。安装完毕,没有任何效果。以为要重启ibus,依然失败,重启整个系统,依旧。或许这东西对后面的步骤有用,但总而言之,至少说明,光是安装这东西是没啥用的。 然后在继续找,然后发现了这篇博文。 (more…)

audacious 怎样在后台运行?

audacious 可能是我最喜欢的播放器之一。加上 gnome 的一些插件后,播放各种音乐超爽。但是有个小问题,因为一般情况下,音乐是常驻的,所以希望能点击关闭后在后台运行。 很多人有各种建议,比如加这个参数那个参数的。 其实 audacious 自带后台运行功能的。 (more…)

java插入mysql一条数据,如何返回自增的ID?

在实际操作中,我们常常有一些各种古怪的需求,比如现在这个。数据库的table中有一个自增的id字段,插入数据库后,要求返回刚刚插入那条数据的id。 在单线程情况下,这当然是一个很简单的问题。首先获得数据库的最大id,给将要插入的语句id赋值为MAX+1,然后插入即可。 Oracle也很容易实现,给这个table建立一个sequence,每次都向这个sequence获取下一个id,效率也是价格公道童叟无欺。 但是,给多线程下的mysql返回刚刚插入的id,这似乎有点小为难。一个立刻可以想到的方法是,给插入操作加个锁,插入后查询MAX id,然后解开锁。但是这个显然是不怎么讲究了。 (more…)

mysql修改存储路径参考

linux下存储数据,mysql无疑是个很不错的选择。mysql的默认存储路径为/var/lib/mysql。以前数据库一直不是很大,总共十个G左右的大小,放在默认路径毫无压力。但是今天,因为新导入一个数据库,光是导入数据就是30+G,瞬间就悲剧了,因为我并没有为/目录准备足够的硬盘分区空间。所以,修改配置,迁移数据库存储路径到合适的地方成了最省力的选择。 (more…)

grub2下修改启动次序

Linux 一般使用 grub2 来引导操作系统, 它不但可以管理各个内核, 而且可以同时管理 Windows 和 Linux. 最近换了个新的机器,虽然是个很不爽的回忆,但总而言之,家里希望能使用我的旧机器.那么,默认启动linux的grub似乎不太合适了(windows都还没搞明白,让我搞linux?你是故意的吧!老妈咆哮.).那么,修改下启动次序,表示下诚意吧. 很多方法[1]可以修改,不过我觉得修改grub.d可能是最合适的. (more…)