mysql常见问题

问题

create table: Specified key was too long; max key length is 767 bytes

原因

数据库表采用utf8编码,其中varchar(255)的column进行了唯一键索引 而mysql默认情况下单个列的索引不能超过767位(不同版本可能存在差异)

[阅读全文]
mysql 

git原理图

Git初学者?刚从svn转过来?看看下面几张图,比大篇幅文章清楚多了

git  svn 

Docker配置文件

默认dockerd全局配置文件在/etc/docker/daemon.json,该文件默认不存在,创建就好了,常用内容:

1
2
3
4
5
6
7
8
{
"data-root": "/data/docker",
"log-driver":"json-file",
	"log-opts":{
		"max-size": "10m",
		"max-file": "3"
	}
}

设置docker主目录,docker运行产生的数据都保存在这里,如镜像、容器、日志、卷等,会占用较大空间,默认在/var/docker下,务必修改!!!

[阅读全文]
docker 

docker保存和加载镜像

背景:

有一些自定义的镜像,不想通过dockerfile创建,没有仓库或者不想上传到仓库中,可以使用保存和加载命令实现环境迁移

保存

1
2
docker save -o xxx.tar repo:tag # 注:不能写IMAGE ID
docker image save helloworld > helloworld.tar # 官方写法

加载:

1
2
docker load < xxx.tar # 或 docker load -i xxx.tar
docker image load -i helloworld.tar # 官方写法

使用scp传输文件和文件夹

服务器间传输文档,不用再传到Windows跳板机或SSH客户端机器,而是使用scp命令直接在服务器上操作。 比如要把A服务器的/home/root/xxx.zip传输到B服务器的/home/root/目录, 进入A服务器执行:scp /home/root/xxx.zip root@192.168.200.19:/home/root
添加-r参数可以传输文档夹:/home/root/eyas/ root@192.168.200.19:/home/root

[阅读全文]
linux  scp 

自定义资源监控

查看docker资源占用

1
docker stats --format='table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}\t{{.NetIO}}\t{{.BlockIO}}'
docker  stat 

关于MySQL字段排序规则

2007年的时候,使用MySql5.5.x版本,发现一个问题:对于varchar字段(char估计一样),在选择utf8字符集时(后面新出来的utf8mb4一样),无法按中文拼音排序,即:排序规则中没有gbk_chinese_ci一项,而在选择gbk、gb2312、gb18030都有,这个问题一直没有找(想)到答案,因为后面的工作中使用SQL Server和Oracle居多。

[阅读全文]
mysql 

CST/CET/UTC/GMT/DST,Unix时间戳几种常见时间概述与关系

1、UTC:

Universal Time Coordinated 协调世界时,又称世界标准时间 多数的两地时间表都以GMT来表示,但也有些两地时间表上看不到GMT字样,出现的反而是UTC这3个英文字母,究竟何谓UTC?事实上,UTC指的是Coordinated Universal Time- 世界协调时间(又称世界标准时间、世界统一时间),是经过平均太阳时(以格林威治时间GMT为准)、地轴运动修正后的新时标以及以「秒」为单位的国际原子时所综合精算而成的时间,计算过程相当严谨精密,因此若以「世界标准时间」的角度来说,UTC比GMT来得更加精准。其误差值必须保持在0.9秒以内,若大于0.9秒则由位于巴黎的国际地球自转事务中央局发布闰秒,使UTC与地球自转周期一致。所以基本上UTC的本质强调的是比GMT更为精确的世界时间标准,不过对于现行表款来说,GMT与UTC的功能与精确度是没有差别的。

[阅读全文]
unix  Unix时间戳  CST  CET  UTC  GMT  DST