风起 发布的文章

[转载]mysql 给有重复记录的表添加唯一索引

原文作者: 不详
转载地址: [[MySQL管理] mysql 给有重复记录的表添加唯一索引](http://bbs.linuxtone.org/forum.php?mod=viewthread&tid=7917)

不希望数据表中有重复记录的时候我们可以给表添加一个联合唯一索引,例如,user表中有user_id,user_name两个字段,如果不希望有两条一摸一样的的user_id和user_name,我们可以给user表添加两个字段的联合唯一索引:

alter table user add unique index(user_id,user_name);

这样当向表中添加相同记录的时候,会返回1062的添加失败信息。但是有一种情况是表中已经有n个重复的记录,这时候我们才想起来要添加唯一索引,再执行上面的操作时,数据库会告诉你已经有重复的记录了,建立索引失败,这时候,我们可以用下面的操作:

alter ignore table user add unique index(user_id,user_name);

- 阅读剩余部分 -

PHP流程控制foreach小技巧

有这么一个数组:

$arr = array(1, 2, 3, 4);

如果需要遍历然后修改值, 常规写法为:

foreach ($arr AS $k => $v) {
    $v= $v* 2;
    $arr[$k] = $v;
}

一有时间就啃PHP手册, 刚发现一简单写法:

foreach ($arr AS &$v) {
    $v = $v * 2;
}

解释: 自PHP5起, 可以很容易地通过在$v之前加上 & 来修改数组的元素. 此方法将以引用赋值而不是拷贝一个值, 这样$arr[$k]就被直接修改了.

原谅的我无知, 知道的别笑话我.

2012了

2012了, 不知道写点什么好, 好歹留下点什么吧.
那: Happy New Year.

检测是否以管理员运行bat的两种方法

我用的是win7系统, 因为不喜欢一些集成包所以一直是手工配置开发环境, 然后写一个web.bat来管理tomcat mysql apache psql等服务.

但是碰到一个问题就是需要重启某个服务, 比如mysql, 这是很费劲的, 因为我是以普通用户跑win7的而不是administrator, 之前的折中方案是写一个su.bat,用处是以admin身份启动cmd然后运行web.bat,但是总感觉还是不够方便,就想着能不能检测到不是管理员身份就以管理员运行自己呢

好了,直接贴代码吧。

第一种方法是检测title里是否管理员关键字,看图。
is_admin.jpg

- 阅读剩余部分 -

高可用负载均衡集群方案之LVS+Keepalived

首先什么是lvs这里就不介绍了, baidu一下你就知道;
为什么需要集群, 为什么需要负载均衡这里也不啰嗦了, baidu一下你就知道;
与其他方案的区别, 优异也不介绍了, baidu一下你就知道.

lvs的几个重要角色是:
1> 主控服务器master
2> 主控备用服务器backup
3> 虚拟服务器virtual server
4> 实际服务器real server

每个角色对应一个ip, realserver则对应多个, 如果你简单的了解过lvs, 就应该知道lvs的3中调度方式和10种调度算法, 这里将使用效率比较高的dr(直接路由)方式, 算法用比较合理的wrr(加权轮询)算法, 其它的模式和算法可执行尝试.
好了下面就直接开始吧, 当然了在这之前你还需要配置好realserver, 保持80通畅.

- 阅读剩余部分 -

轻松搭建git服务器

最近svn频繁出怪问题, 也可能是我vps不行吧(512MB内存, 出问题时的负载不足1, 内存120空闲...), 实在忍不住, 干脆换git了, 下面把摸索出来的东西记录下, 只简单说下而已..

个人怎么使用我就不说了, 如果你刚接触git也可以参考文章末尾我提供的参考文档; 这里只说下git服务器的搭建, 下面的内容都建立在我认为你已经大致会使用git init, git add, git commit等简单命令的基础上.

另外关于认证方式, 我们选择单用户, 多证书的方式, github就是如此, 因为是ssh访问, 不可能每个人在服务器上有一个用户, 关于几种认证方式请参考文章末尾我提供的参考文档, 那下面我们开始吧.

- 阅读剩余部分 -