一切福田,不離方寸,從心而覓,感無不通。

MySQL 中 datetime 和 timestamp 的区别与选择

MySQL 中常用的两种时间储存类型分别是datetime和 timestamp。如何在它们之间选择是建表时必要的考虑。下面就谈谈他们的区别和怎么选择。 1 区别 1.1 占用空间 类型 占据字节 表示形式 datetime 8 字节 yyyy-mm-dd hh:mm:ss timestamp 4 字节 yyyy-mm-dd hh:mm:ss 1.2 表示范围 类型 表示范围 datetime '1000-01-01 00:00:00.000000' to '9999-12-31 23:59:59.999999' timestamp '1970-01-01 00:00:01.000000' to '2038-01-19 03:14:07.999999' timestamp翻译为汉语即"时间戳",它是当前时间到 Unix元年(1970 年 1 月 1 日 0 时 0 分 0 秒)的秒数。对于某些时间的计算,如果是以 datetime 的形式会比较困难,假如我是 1994-1-20 06:06:06 出生,现在的时间是 2016-10-1 20:04:50 ,那么要计算我活了多少秒钟用 datetime 还需要函数进行转换,但是 timestamp 直接相减就行。 1.3 时区 timestamp 只占 4 个字节,而且是以utc的格式储存, 它会自动检索当前时区并进行转换。 datetime以 8 个字节储存,不会进行时区的检索. 也就是说,对于timestamp来说,如果储存时的时区和检索时的时区不一样,那么拿出来的数据也不一样。对于datetime来说,存什么拿到的就是什么。 还有一个区别就是如果存进去的是NULL,timestamp会自动储存当前时间,而 datetime会储存 NULL。 2 测试 我们新建一个表 插入数据 查看数据,可以看到存进去的是NULL,timestamp会自动储存当前时间,而 datetime会储存NULL 把时区修改为东 9 区,再查看数据,会会发现 timestamp 比 datetime 多一小时 如果插入的是无效的呢?假如插入的是时间戳 结果是0000-00-00 00:00:00,根据官方的解释是插入的是无效的话会转为 0000-00-00 00:00:00,而时间戳并不是MySQL有效的时间格式。 那么什么形式的可以插入呢,下面列举三种

  3 选择 如果在时间上要超过Linux时间的,或者服务器时区不一样的就建议选择 datetime。 如果是想要使用自动插入时间或者自动更新时间功能的,可以使用timestamp。 如果只是想表示年、日期、时间的还可以使用 year、 date、 time,它们分别占据 1、3、3 字节,而datetime就是它们的集合。   from:https://segmentfault.com/a/1190000017393602

龙生   14 May 2021
View Details

Linux常用命令2

一、服务器基本信息
1、查看系统主机名称
2、查看系统内核版本
3、查看 RedHat 版本
4、查看 CentOS 版本
5、查看 CPU 信息
6、列出所有可用块设备
7、查看磁盘空间占用
8、查看内存占用
9、查看文件/目录空间占用
10、查看时间与时区
二、服务器网络
1、查看服务器内网 IP
2、查看服务器公网出口 IP
3、查看服务器防火墙状态
4、firewalld 防火墙添加规则/重载规则/查看开放的端口
5、DNS 与 hosts
6、ping 与 telnet
三、服务进程与连接
1、进程
2、连接
四、Docker
1、仓库 REGISTRY
2、镜像 IMAGE
3、容器 CONTAINER
4、docker run 命令
五、其他
1、scp
2、rz 与 sz
3、which 与 whereis
4、zip 与 unzip
5、history
6、回到命令行首与行尾

龙生   14 May 2021
View Details

Linux常用命令

文件类
ls echo cat grep find wc cut head tail less chmod chown ln cp scp which mkdir pwd sed awk xargs
磁盘类
du df
网络
ifconfig netstat tcpdump ping
系统类
ps kill time date who su sudo free top ulimit export set unset nohup
压缩、解压缩类
zip unzip gzip tar
简单应用
查看系统版本
查看cpu个数和核数
清除缓存
显示所有监听端口
找出监听特定端口的程序
统计和特定ip端口建立的tcp连接数,或已经处于TIME_WAIT状态的连接数
显示特定程序cpu和内存占用
显示cpu或内存占用前几名程序,自定义输出序列
删除特定目录及子目录下30天之前的日志文件

龙生   14 May 2021
View Details