千家信息网

MySQL的UUID

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,MySQL在初始化的时候会产生一个UUID:[root@mha03 opt]# mysql/bin/mysqld --initialize --user=mysql --basedir=/opt/my
千家信息网最后更新 2026年10月31日MySQL的UUID

MySQL在初始化的时候会产生一个UUID:

[root@mha03 opt]# mysql/bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/

2019-08-14T03:42:26.588685Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2019-08-14T03:42:26.899821Z 0 [Warning] InnoDB: New log files created, LSN=45790

2019-08-14T03:42:26.944820Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.

2019-08-14T03:42:27.023508Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 88e4e8ea-be45-11e9-b3d0-000c29c8d0f8.

2019-08-14T03:42:27.024729Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.

2019-08-14T03:42:27.026127Z 1 [Note] A temporary password is generated for root@localhost: &didSDjQn2dk


UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为 开放软件基金会 组织在 分布式计算 环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是 微软公司 的 全局唯一标识符 (GUID ),而其他重要的应用,则有Linux ext2/ext3文件系统、LUKS加密分区、GNOME、KDE、Mac OS X等等。另外我们也可以在e2fsprogs包中的UUID库找到实现。



定义

UUID是由一组32位数的16进制数字所构成,所以UUID理论上的总数为16^32=2^128,约等于3.4 x 10^38。也就是说若每纳秒产生1兆个UUID,要花100亿年才会将所有UUID用完。

UUID的标准型式包含32个 16进制 数字,以连字号分为五段,形式为8-4-4-4-12的32个字符。示例:

550e8400-e29b-41d4-a716-446655440000

UUID亦可刻意重复以表示同类。例如说 微软 的 COM 中,所有组件皆必须实现出 IUnknown 接口,方法是产生一个代表IUnknown的UUID。无论是程序试图访问组件中的IUnknown接口,或是实现IUnknown接口的组件,只要IUnknown一被使用,皆会被参考至同一个ID:00000000-0000-0000-C000-000000000046。 [1]

组成

UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API。按照 开放软件基金会 (OSF)制定的标准计算,用到了以太网卡地址、纳秒级时间、芯片ID码和随机数。

UUID由以下几部分的组合:

(1)当前日期和时间,UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同。

(2)时钟序列。

(3)全局唯一的IEEE机器识别号,如果有网卡,从网卡MAC地址获得,没有网卡以其他方式获得。

UUID的唯一缺陷在于生成的结果串会比较长。关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。在ColdFusion中可以用CreateUUID()函数很简单地生成UUID,其格式为:xxxxxxxx-xxxx- xxxx-xxxxxxxxxxxxxxxx(8-4-4-16),其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。而标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12),可以从cflib 下载CreateGUID() UDF进行转换。 [2]

(4)在 hibernate(Java orm框架)中, 采用 IP-JVM启动时间-当前时间右移32位-当前时间-内部计数(8-8-4-8-4)来组成UUID



UUID作用:

UUID 的目的是让 分布式系统 中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。目前最广泛应用的 UUID,即是微软的 Microsoft's Globally Unique Identifiers (GUIDs),而其他重要的应用,则有 Linux ext2/ext3 档案系统、LUKS 加密分割区、GNOME、KDE、Mac OS X 等等。

郑州不孕不育医院:http://jbk.39.net/yiyuanzaixian/zztjyy/


UUID应用:


使用UUID的好处在分布式的软件系统中(比如:DCE/RPC, COM+,CORBA)就能体现出来,它能保证每个节点所生成的标识都不会重复,并且随着WEB服务等整合技术的发展,UUID的优势将更加明显。根据使用的特定机制,UUID不仅需要保证是彼此不相同的,或者最少也是与公元3400年之前其他任何生成的通用唯一 标识符 有非常大的区别。UUID最少在3000+年内不会重复。

通用唯一标识符还可以用来指向大多数的可能的物体。微软和其他一些软件公司都倾向使用全球唯一标识符(GUID),这也是通用唯一标识符的一种类型,可用来指向组建对象模块对象和其他的 软件组件 。第一个通用唯一标识符是在网络计算机系统(NCS)中创建,并且随后成为 开放软件基金会 (OSF)的 分布式计算环境 (DCE)的组件。


标识 软件 生成 时间 标识符 系统 分布式 标准 组件 微软 应用 数字 基金 基金会 接口 机器 网卡 部分 保证 开放 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 上海睿民互联网科技有限公司 亿人帮互联网科技有限公司 互联网科技公司经营范围 奇酷互联网络科技 深圳艾佳互联网科技 互联网金融和金融科技 居家互联网科技有限公司 科技伦理 互联网公司 哈尔滨秒房互联网科技有限公司 互联网科技与大数据专业 本届互联网博览会上的黑科技 中国科技创新与世界互联网大会 允成互联网科技有限公司融资 长沙茂晟互联网科技有限公司 互联网科技快讯热点 上海创道互联网络科技有限公司 从那以后互联网科技有限公司 35岁以上互联网科技行业 恒生科技互联网指数十大成分股 互联网科技有限公司图片 鑫亿盛互联网科技 无锡溥仪互联网科技有限公司 北京大学互联网科技怎么样 小米互联网科技园设置 上海宁丞科技互联网 苏州铭阳互联网科技有限公司 长沙茂晟互联网科技有限公司 西安有哪些互联网高科技企业 吉林省码上互联网科技电话
0