`

MYSQL UUID

阅读更多

1. 简介

通用唯一识别码 (Universally Unique Identifier, UUID) 是一个软件建构的标准,亦为自由软件基金会 (Open Software Foundation, OSF) 的组织在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部份。

2. 作用

是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。

3. 定义

一组 UUID,系由一串 16 位组(亦称 16 字节,或 128 位)的16进位数字所构成,是故UUID理论上的总数为216 x 8=2128,约等于3.4 x 1038。也就是说若每奈秒产生1兆个UUID,要花100亿年才会将所有UUID用完。
UUID的标准型式包含32个16进位数字,以连字号分为五段,形式为8-4-4-4-12的32个字符。示例;
550e8400-e29b-41d4-a716-446655440000


4. 重复机率

产生重复UUID并造成错误的情况非常低,是故大可不必考虑此问题。(机率也与乱数产生器的品质有关)

5. 应用

//sql 生成uuid
SELECT uuid();
3c3b2ca8-698a-11e0-ab0f-6cf049271360

//生成uuid,去除'-'
SELECT REPLACE(uuid(), '-', '') AS uuid;
5ff1b826698a11e0ab0f6cf049271360

 

参考:http://zh.wikipedia.org/wiki/UUID

0
1
分享到:
评论

相关推荐

    返回Long型UUid

    在Java编程中,UUID(Universally Unique Identifier)是一种标准的128位的唯一标识符,通常用于生成不可预测的全局唯一ID。然而,标准的UUID由32个16进制数字组成,形式上类似于“123e4567-e89b-12d3-a456-...

    Mysql修改server uuid的方法分享

    在MySQL环境中,每个服务器都有一个唯一的Server UUID(Universally Unique Identifier),这个ID主要用于区分不同的数据库实例,尤其是在主从复制配置中。当从服务器是通过克隆或备份恢复的主服务器时,它们可能会...

    Mysql中存储UUID去除横线的方法

    在MySQL中,UUID(Universally Unique Identifier)是一种广泛使用的全局唯一标识符,通常表现为36个字符的字符串,包括4段由短横线分隔的16进制数字。例如,`05ba463f-1dab-471f-81c7-58e0b06f35f0`。然而,这种...

    spring boot整合mybatis利用Mysql实现主键UUID的方法

    在Spring Boot项目中,整合MyBatis并利用MySQL实现主键UUID是一种常见的需求,尤其是在分布式系统中,为了保证数据的一致性和唯一性。UUID(Universally Unique Identifier)是一种全局唯一的标识符,它由128位数字...

    多种数据库下获得32位UUID的方法

    多种数据库下获得32位UUID的方法,包括MYSQL,SQLSERVER,Oracle ,以及mySQL 下使用当前时间的函数使用

    activerecord-mysql-uuid-column:ActiveRecord MySQL 适配器的真实 UUID 列

    ActiveRecord::Mysql::UuidColumn 向ActiveRecord MySQL2适配器添加一个:uuid列,该列存储在一个16字节的二进制列中。 这正是它需要的空间。安装将此行添加到您的应用程序的Gemfile中: gem 'activerecord-mysql-...

    PHP实现生成统一唯一标识符UUID

    在IT行业中,UUID(Universally Unique Identifier)是一种用于标识信息的标准,它确保了全局的唯一性,不依赖网络连接或中央注册机构。在PHP中,生成UUID常常用于创建唯一的记录标识,比如数据库中的主键或者分布式...

    Laravel开发-laravel-uuid

    例如,在MySQL中,你需要创建一个`binary(16)`类型的字段,而在PostgreSQL中,可以使用`uuid`类型。Laravel的迁移文件可以帮助你完成这些操作。 总之,Laravel-uuid扩展包为Laravel开发者提供了一种简单且可靠的...

    Hibernate用UUID作为主键的Demo

    在使用UUID作为主键时,数据库表对应的主键字段应设置为足够的长度,如MySQL的`CHAR(36)`或PostgreSQL的`VARCHAR(36)`,以容纳32位十六进制字符串加上4个破折号。 ### 6. 测试与运行 在实际项目中,你可以创建一个...

    深入分析mysql为什么不推荐使用uuid或者雪花id作为主键

    前言:在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究竟有什么坏处?...

    利用mysql实现的雪花算法案例

    - UUID:虽然能保证唯一性,但UUID是无序的字符串,不利于索引优化。 - 雪花算法:雪花算法在保证ID唯一性的同时,具有较高的生成效率,被大多数互联网公司采纳。 二、雪花算法详解 1. 原理 雪花算法基于64位的...

    这个包可以让您轻松地在Laravel模型中使用UUID

    3. 数据库兼容性:支持多种数据库系统,如MySQL、PostgreSQL等,它们可能对UUID字段有不同的处理方式。 4. Eloquent集成:与Laravel的Eloquent ORM(对象关系映射)紧密集成,使得在查询、更新和删除模型时能够无缝...

    mysql-8.0.26-macos11-x86_64.dmg

    - **新的数据类型和函数**:如UUID、VARBINARY(BLOB)等新数据类型,以及诸多数学和字符串处理函数的添加。 2. **安装流程**: - 打开下载的“mysql-8.0.26-macos11-x86_64.dmg”文件,会显示MySQL的安装向导。 -...

    mysql-binuuid-rails:将UUID存储在MySQL二进制数据库列中。 节省存储空间并提高性能

    mysql-binuuid-rails mysql-binuuid-rails允许您利用Rails 5以来可用的Attributes API在模型上定义UUID类型的属性。这样做,您可以将UUID作为二进制值存储在数据库中,并且仍然能够使用字符串表示形式进行查询,因为...

    最新版widnows mysql-8.0.26-winx64.zip

    5. **新的数据类型和函数**:增加了更多的数据类型(如UUID)和函数,以支持更广泛的业务需求。 6. **分区表改进**:对分区表进行了优化,提供了更灵活的分区策略和更快的分区操作。 7. **优化器改进**:查询优化...

    SQL Server 和 MySql 语法和关键字的区别——用于SQLServer到MySql的转换

    在 SQL Server 中,我们可以使用 `NEWID` 函数来生成一个 UUID,而在 MySql 中,我们可以使用 `UUID` 函数来生成一个 UUID。例如,在 SQL Server 中,我们可以使用 `SELECT NEWID() FROM table` 来生成一个 UUID,而...

Global site tag (gtag.js) - Google Analytics