mysql uuid是不是有序增加的

今天就跟大家聊聊有关mysql uuid是不是有序增加的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

A UUID is designed as a number that is globally unique in space and time. Two calls to UUID() are
expected to generate two different values, even if these calls are performed on two separate computers
that are not connected to each other.
uuid是世界上唯一的,就算两个没有任何关系的计算机uuid也是不同的

但是文档上却没有说到他是不是有序的,网上都说uuid是无序,我想一个场景试一下:

场景解释:
建一个表,里面有两个字段 uuid和时间。
每一秒向这个表里插入一条数据,分别是 uuid()和now()

插入一段时间之后,如果按id排序和按t_date排序得到的结果是一样的,那么应该可以证明uuid是有序的,如果排序结果不一样,那么是无序的。

我这里两个进程同时插入,并且跑了两个小时

模拟过程:
在mysql 5.6上测试
mysql> create table song( id char(36), t_date datetime);
Query OK, 0 rows affected (0.00 sec)

cat insert.sh
#!/bin/bash
while true; do
mysql -h20.13.52.100 -P3306 -uroot -ptest  -e “insert into test.song select uuid(),now();”
sleep 1
done

nohup sh insert.sh &
nohup sh insert.sh &

两个一起插入

运行大概两个小时,停掉insert.sh后:

mysql -h20.13.52.100 -P3306 -uroot -ptest  -e “select * from test.song order by t_date;” > a.log
mysql -h20.13.52.100 -P3306 -uroot -ptest  -e “select * from test.song order by id;” > b.log
diff a.log b.log  -y > c.log

[root@10-13-59-213 ~]# vim c.log
id      t_date                                                  id      t_date
b6af9995-50d2-11e6-9d61-5254005ae15d    2016-07-23 20:41:01   | 0019655a-50d5-11e6-9d61-5254005ae15d    2016-07-23 20:57:24
cc161c32-50d2-11e6-9d61-5254005ae15d    2016-07-23 20:41:37   | 001968e2-50d5-11e6-9d61-5254005ae15d    2016-07-23 20:57:24
ccafd852-50d2-11e6-9d61-5254005ae15d    2016-07-23 20:41:38   <
cd495dc1-50d2-11e6-9d61-5254005ae15d    2016-07-23 20:41:39   <

从c.log中可以看到a.log和b.log的不同。 那么 uuid()是无序的

看完上述内容,你们对mysql uuid是不是有序增加的有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注云搜网行业资讯频道,感谢大家的支持。


【AD】美国洛杉矶/香港/日本VPS推荐,回程电信CN2 GIA线路,延迟低、稳定性高、免费备份_搬瓦工

【AD】炭云:36元/年/1GB内存/20GB SSD空间/500GB流量/5Gbps端口/KVM/香港/国际线路LUMEN