2011年12月

[同步]mysql双向同步

条件

服务器1(CentOS6.0x32 Mysql5.5.18)
IP: 192.168.1.2
服务器2(CentOS6.0x64 Mysql5.5.18)
IP: 192.168.1.3

修改配置文件

修改 服务器2 上的/etc/my.cnf文件

server-id=2

重启mysql

service mysqld restart

启动

以下都是进入mysql后,执行的语句:

#服务器1 上执行
grant select,replication slave on *.* to 'sync'@'192.168.1.3' identified by 'your password';
flush privileges;
show master status;
#记下File和Position的值 log1

#服务器2 上执行
grant select,replication slave on *.* to 'sync'@'192.168.1.2' identified by 'your password';
flush privileges;
show master status;
#记下File和Position的值 log2

#服务器1 上执行(问号分别替换为刚才log2里面记下的两个值)
change master to master_host='192.168.1.3',master_user='sync', master_password='your password', master_log_file='?', master_log_pos=?;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
slave start;
show slave status;

#服务器2 上执行(问号分别替换为刚才log1里面记下的两个值)
change master to master_host='192.168.1.2',master_user='sync', master_password='your password', master_log_file='?', master_log_pos=?;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
slave start;
show slave status;

于是,同步就搞定了!

多行文本或未知宽高的图片垂直居中

项目中经常会遇到多行文本或未知宽高的图片垂直居中,同事提供的一种近乎万能的方法,备份下来:


据英国媒体报道,本月10号,自2000年以来历时最长的月全食将发生,全球多个地区如半个非洲、中东地区、包括中国在内的亚洲中部等地区以及澳大利亚西部的人们均可以观察到这次月全食。


#text { width: 400px; height: 400px; border: 1px solid #f00; display: table-cell; vertical-align: middle; position: relative; }
#text .box { *position:absolute; *left: 0; *top: 50%; }
#text .box p { *position: relative; *top: -50%; }

2011年12月14日更新css如下:(支持最外层元素浮动)


.text { width: 400px; height: 400px; border: 1px solid #f00; display: table; vertical-align: middle; text-align: left; *position: relative; }
.text .box { display: table-cell; vertical-align: middle; *position:absolute; *top: 50%; }
.text .box p { *position: relative; *top: -50%; }

demo下载:vertical.zip

Lua杂记

lua中与大部分编程语言不一样的地方

--不等于
~=
--注释风格:
--注释line1
--[[
注释line1
注释line2
]]
--字符串连接符号
..
--长度
#
--table,类似于php中的数组函数库

--比较运算符==,与php中的“===“类似,比较值的类型,当用引用比较的时候,仅两个变量表示的是同一个对象时才相等
==

--lua中,只有 false 和 nil 为假,0是真

nginx负载均衡配置

配置文件

以下代码仅作示例,仅仅是把动态页面均衡到各个server上。

upstream myServer {
    server 127.0.0.1:81; 
    server 127.0.0.2:81 down; 
    server 127.0.0.3:81 weight=1; 
    server 127.0.0.4:81 backup; 
}
server {
  listen 127.0.0.1:80;
  server_name type.so www.type.so;
  access_log /var/log/httpd/domains/type.so.log combined;
  
  location / {
	try_files $uri @backend;
  }
  
  location ~* \.(jpeg|jpg|gif|png|bmp|ico|js|css|swf)$ {
	root /var/www/html/type.so;
        expires 7d;
	try_files $uri @backend;
  }
  location ~ .*\.(htaccess|htpasswd|mdb)?$ {
    deny all;
  }
  
  location @backend {
    internal;
    proxy_pass http://myServer;
    include proxy.inc;
  }
}