存档

2014年11月 的存档

InnoDB中关于有符号与无符号整数的测试

2014年11月18日 没有评论

如题,对InnoDB中的tinyint类型做了有符号和无符号转换的测试,几种情况:

1、有符号的-128转无符号时,预期是转成128,原因是0x80,实际上变成了0
2、无符号的设置为256时,预期为0,实为255
3、无符号的255转为有符号时,预期结果为-1,实为127。
4、无符号的255转为有符号时,为127,再转为无符号时,还是127不变。

初步结论:超出值域时,会自动把值修正为离当前值近的边界值,原值丢弃。通过改回原类型无法找回原来的值。

分类: 工作 标签: , , ,

SSH命令的几种典型用法

2014年11月17日 没有评论

ssh命令是一把军刀,能干很多事,举几个比较典型的例子。
1、做ssh穿墙的firewall,192.168.1.10是firewall的当前ip,xx.xx.xx.xx是远端用来当跳板的ip

ssh -fNg -D192.168.1.10:22022 xx.xx.xx.xx

2、NAT:把当前server上的22022端口映射到xx.xx.xx.xx的22上。

ssh -fNg -L 22022:127.0.0.1:22 xx.xx.xx.xx

3、Socket5代理:用当前Server上的8080端口当代理,通过xx.xx.xx.xx上网。

ssh xx.xx.xx.xx -D192.168.1.10:8080 -g -f sleep 30d

更多内容…

分类: 工作 标签: , , ,

PostgreSQL生成唯一序列号

2014年11月17日 没有评论

项目中经常会用到数字的唯一标识生成,比较常见的做法是用PostgreSQL的SEQUENCE来生成。
简单说一下步骤:
基础:
PostgreSQL自带的命令行工具是psql,用法是psql -Uuserxxx -Wpasswordxxx dbname
如果未配置到PATH环境变更中,默认可执行文件位置/usr/local/pgsql/bin/psql
退出命令行使用\q

1、创建一个从123456开始名为xxx_id_seq序列

CREATE SEQUENCE xxx_id_seq START 123456;

2、使用方法

SELECT nextval('xxx_id_seq');

3、改当前序列号为从10000001开始

SELECT setval('xxx_id_seq',10000001);

更多内容…

分类: 工作 标签: , , ,