Mysql 用UUID做主键可行么

Mysql 用UUID做主键可行么,第1张

在mysql中可以把UUID作为逻辑主键,物理主键依然使用自增ID

1、UUID定义

UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织应用在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部分。UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。

2、UUID优点

1) 能够保证独立性,程序可以在不同的数据库间迁移,效果不受影响。

2) 保证生成的ID不仅是表独立的,而且是库独立的,这点在你想切分数据库的时候尤为重要。

3) 在oracle做数据迁移的时候不会因为表的sequence不连续而出现问题

3、UUID缺点

1) 比较占地方,和INT类型相比,存储一个UUID要花费更多的空间。

2) 使用UUID后,URL显得冗长,不够友好。

楼主:你是想做mysql的主从复制嘛

如果是,我把一些关键点给你说下。

1、主节点需要开启二进制日志文件(bin_log)、需要指明server_id

2、从节点需要开启中继日志(relay_log)、需要开启只读(read_only=ON)、需要指明server_id

3、主从配置文件中都写上

innodb_file_per_table = ON:每张表使用单独的存储空间

skip_name_resolve :禁止解析主机名,centos6不用指明'ON',centos7需要指明

datadir=/path/to/data:指明存储数据路径,默认的是'/var/lib/mysql/'

需要注意的是:

1、主从节点的serber_id一定不能相同,看了楼主的截图,应该是server_id问题

2、mysql存储数据路径的属主、属组一定要是mysql用户,需要权限写入数据


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8660569.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存