发表于: DB/ES | 作者: | 日期: 2017/6/22 10:06

上一篇《58到家数据库30条军规解读》引发了广泛的讨论,某些军规部分同学有疑惑,补充一文说明。
 
军规:必须使用UTF8字符集
和DBA负责人确认后,纠正为“新库默认使用utf8mb4字符集”。
这点感谢网友的提醒,utf8mb4是utf8的超集,emoji表情以及部分不常见汉字在utf8下会表现为乱码,故需要升级至utf8mb4。
默认使用这个字符集的原因是:“标准,万国码,无需转码,无乱码风险”,并不“节省空间”。
一个潜在坑:阿里云上RDS服务如果要从utf8升级为utf8mb4,需要重启实例,所以58到家并没有把所有的数据库升级成这个字符集,而是“新库默认使用utf8mb4字符集”。
More …

评论关闭
发表于: DB/ES | 作者: | 日期: 2017/6/22 10:06

主题 数据库
军规适用场景 : 并发量大、数据量大的互联网业务
军规 :介绍内容
解读 :讲解原因 , 解读比军规更重要
一、基础规范
( 1 ) 必须使用 InnoDB 存储引擎
解读:支持事务、行级锁、并发性能更好、 CPU 及内存缓存页优化使得资源利用率更高
( 2 )必须使用 UTF8 字符集
解读:万国码,无需转码,无乱码风险,节省空间
More …

评论关闭
发表于: java/j2ee | 作者: | 日期: 2017/6/21 08:06
标签:

首先来看看JVM参数的设置形式:

-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

这里有几个问题:
1. 各个参数的含义什么?
2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动?
3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?
More …

评论关闭
发表于: lnmp | 作者: | 日期: 2017/6/08 09:06
标签:

linux是一个很能自动产生文件的系统,日志、邮件、备份等。虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情。不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧。
More …

评论关闭
发表于: mac/iphone/ipad/android | 作者: | 日期: 2017/6/06 02:06
标签:

查看所有的变量:

$ printenv
PATH=/Library/Frameworks/Python.framework/Versions/3.4/bin:/Users/calios/.cabal/bin:/Applications/ghc-7.8.4.app/Contents/bin:/Library/Frameworks/Python.framework/Versions/3.4/bin:/Users/calios/.cabal/bin:/Applications/ghc-7.8.4.app/Contents/bin:/Library/Frameworks/Python.framework/Versions/3.4/bin:/Users/calios/.cabal/bin:/Applications/ghc-7.8.4.app/Contents/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
ZSH=/Users/calios/.oh-my-zsh

More …

评论关闭
发表于: lnmp | 作者: | 日期: 2017/6/06 02:06
标签: ,,

我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的任务。
假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,挂起这个程序,然后可以看到系统提示(方括号中的是作业号):
代码如下:

[1]+ Stopped /root/bin/rsync.sh

More …

评论关闭
发表于: DB/ES | 作者: | 日期: 2017/6/02 01:06

MySql数字函数大全
abs(N)
返回N的绝对值 
mysql> select ABS(2);
-> 2
mysql> select ABS(-32);
-> 32
floor(N)
返回不大于N的最大整数值 
mysql> select FLOOR(1.23);
-> 1
mysql> select FLOOR(-1.23);
-> -2
More …

评论关闭
发表于: DB/ES | 作者: | 日期: 2017/6/01 03:06
标签:

总结一下mysql的时间格式化函数。
DATE_FORMAT(date,format)
根据format字符串格式化date值。下列修饰符可以被用在format字符串中:
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
%M 月名字(January……December)
%m 月, 数字(01……12)
%c 月, 数字(1……12)
%b 缩写的月份名字(Jan……Dec)
%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
%d 月份中的天数, 数字(00……31)
%e 月份中的天数, 数字(0……31)
%W 星期名字(Sunday……Saturday)
%a 缩写的星期名字(Sun……Sat)
More …

评论关闭
发表于: DB/ES | 作者: | 日期: 2017/6/01 02:06
标签:

MySQL支持的三个浮点类型是 FLOAT、DOUBLE 和 DECIMAL 类型。FLOAT 数值类型用于表示单精度浮点数值,而 DOUBLE 数值类型用于表示双精度浮点数值。
与整数类型一样,这些类型也带有附加参数:一个显示宽度指示器和一个小数点指示器。例如,语句FLOAT (5,2)规定显示的值不会超过5位数字,小数点后面带有2位数字。看下面的示范举例:
mysql> insert into data values (876.90);
Query OK, 1 row affected (0.03 sec)
mysql> insert into data values (-5.2);
Query OK, 1 row affected (0.03 sec)
mysql> insert into data values (-12345.789);
ERROR 1264 (22003): Out of range value for column ‘price’ at row 1
mysql> insert into data values (-1234.789);
ERROR 1264 (22003): Out of range value for column ‘price’ at row 1
More …

评论关闭
发表于: DB/ES | 作者: | 日期: 2017/6/01 02:06
标签:

增加字段:
ALTER TABLE table_name ADD field_name field_type;
//增加一个新列
alter table t2 add d timestamp;
alter table infos add ex tinyint not null default ‘0’;
More …

评论关闭